Каков синтаксис слова «не равно» в SQLite?


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

Я хочу вернуть курсор, указывающий на все, что НЕ onSale, что мне изменить? Спасибо!

Ответы:


201

Из официальной документации :

Оператор неравенства может быть либо, !=либо<>

Итак, ваш код становится:

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

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

почему я должен добавить «OR 'mycolumn' IS NOT NULL? Когда я запрашиваю с предложением where NOT EQUAL?»
ThierryC

3
@ban-geoengineering <>является стандартом SQL Ansi и !=не является. Конечно <>более профессионально
edc65

@ ban-geoengineering, вот несколько комментариев с аргументами в пользу использования !=или <>.

9

Вы должны использовать в компараторе оператор неравенства: "type!=?"или "type<>?".


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.