Извините за мой английский. Я пытаюсь создать динамически. Пример: мы вводим. Слово «hellow
», я ввожу h
-> он - это все слово, имя которого начинается во втором he
-> он - это все слово, имя которого начинается в последнем hel
-> он есть ... и так далее. Слово может быть в верхнем и нижнем регистре, таком как HeLLow
. Мой примерПоиск sqlite android
public List<Map<String, String>> getSearch(String tableName, String search) {
String query = "SELECT * FROM " + tableName + " WHERE `name` LIKE " + search;
Cursor cursor = db.rawQuery(query, null);
List<Map<String, String>> list = new ArrayList<>();
String[] names = cursor.getColumnNames();
if(cursor.moveToFirst()) {
do{
Map<String, String> map = new HashMap<String, String>();
for (int i = 0; i < names.length; i++) {
map.put(names[i], cursor.getString(i));
}
list.add(map);
} while (cursor.moveToNext());
}
return list;
}
Я стараюсь сделать так:
String query = "SELECT * FROM " + tableName + " WHERE name = " + search;
String query = "SELECT * FROM " + tableName + " WHERE name MATCH " + search;
его не работать тоже, я всегда list = 0
так что это не имеет ничего общего с андроидом или sqlite, но может быть перефразировано как 'как LIKE работает в SQL' – njzk2
Почему у меня есть -1? – g8214435