Похоже, что вы хотите объединить имена и фамилии.
Вы можете сделать это, используя ||
, поэтому ваш базовый запрос может быть: -
SELECT firstName, lastName, firstName||' '||lastName AS name_in_full WHERE firstName LIKE ? OR lastName LIKE ?
- что за?представляет значение в том виде, в котором оно было предоставлено (поэтому вышеизложенное, так как оно не будет работать должным образом).
- Вы можете или не можете хотеть, чтобы столбцы firstName и lastName в результирующем Курсоре
- курсор будет иметь столбец с именем name_in_full , и именно этот столбец объединит оба имени.
Для использования методом query , который вы зададите sqlВыберите , чтобы быть
sqlSelect = "firstName,lastName,firstName||' '||lastName AS name_in_full";
- без указания имени и фамилии и соответствующей разделяющей запятой при необходимости
Альтернативная интерпретация вопроса
Если вы хотите найти только комбинацию из обоих, например, у вас есть строки, такие как
Bob Hope
Joe Joe
Bob Bob
Joe Bob
, и вы хотитенайдите строку 1 Джо Боба , т. е. Джо Боба , но никаких других строк вместо ИЛИ используйте И
т.е.
Cursor cursor = qb.query(
db,
sqlSelect,
"firstName LIKE ? AND lastName LIKE ?", //<<<<<<<<<< OR change to AND
new String[]{"%" + name + "%", "%" + name + "%"},
null, null, null
);