Що таке синтаксис "не рівний" у SQLite?


112
 Cursor findNormalItems = db.query("items", columns, "type=?", 
                                   new String[] { "onSale" });

Я хочу повернути курсор, який вказує на все, що НЕ є у продажу, що я повинен змінити? Дякую!

Відповіді:


201

З офіційної документації :

Оператор, що не дорівнює, може бути !=або<>

Отже ваш код стає:

Cursor findNormalItems = db.query("items", columns, "type != ?", 
                                  new String[] { "onSale" });   

9
На мій погляд, !=виглядає більш професійно - і більше відповідає операторам =та ==операторам.
заборона-геоінженерія

чому я повинен додати "АБО" мій стовпець "НЕ НУЛЬНИЙ? Коли я запитую за допомогою пункту де НЕ РІВНІ?
ThierryC

3
@ ban-геоінженерія <>є стандартом SQL Ansi і !=не є. Звичайно <>, більш професійний
edc65

@ бан-геоінженерія, ось купка коментарів, що представляють аргументи для використання !=або <>.

9

Ви повинні використовувати в компараторі нерівний оператор: "type!=?"або "type<>?".


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.