Чем заменить функцию locate в sqlite, как сравнить строки? - PullRequest
1 голос
/ 14 июля 2011

выберите * ИЗ контактов, ГДЕ адрес как?или же ?как адресили же ?как адрес - ОШИБКА

Как написать такой выбор?

Использует sqlite и Android

Ответы [ 3 ]

0 голосов
/ 14 июля 2011

== редактировать ==
Я не проверял это, но, пожалуйста, попробуйте (дайте мне знать результат):
sql: yourString LIKE ‘%’||ADDRESS||‘%’
Вам может понадобиться selectionArgs для экранирования некоторых символов SQL.

  SQLiteDatabase db = ...;
  String[] selectionArgs = new String[]{"yourString"};
  db.rawQuery(
    "SELECT * FROM CONTACTS WHERE ? LIKE ‘%’||ADDRESS||‘%’ ", selectionArgs);
0 голосов
/ 14 июля 2011

Пожалуйста, попробуйте с SQL, подобным этому

select * from contacts where 'yoursearchstring' like '%' || address || '%'

Это заключает в себе подстановочные знаки в поле address

0 голосов
/ 14 июля 2011

что вы хотите достичь с помощью

 address like ? or ? like address

Я думаю, вам нужно что-то подобное

select * from contacts where address like '%yoursearchstring%'

, которое найдет каждый контакт, содержащий yoursearchstring вадрес поля

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...