Потому что я не могу использовать «<> Null» в SELECT для Mysql? - PullRequest
0 голосов
/ 15 января 2020

Я работаю над проектом, я хотел бы знать разницу между использованием is not null или <> null в Mysql.

Почему мы должны использовать IS NOT NULL вместо <> NULL ? Ибо когда я делаю, как во втором случае, результаты не найдены.

Пример

  1. Выберите * из таблицы, где имя не NUll;

  2. выберите * из таблицы, где имя <> NUll;

1 Ответ

2 голосов
/ 15 января 2020

С https://dev.mysql.com/doc/refman/8.0/en/problems-with-null.html:

В SQL значение NULL никогда не является истинным по сравнению с любым другим значением, даже NULL. Выражение, содержащее NULL, всегда создает значение NULL, если иное не указано в документации для операторов и функций, участвующих в выражении.

NULL значения представляют отсутствующие неизвестные данные.

И NULL значения обрабатываются иначе, чем другие значения .

Для NULL значений с операторами сравнения, таких как =, < или <>, проверить невозможно.

Это правило. Таким образом, вы можете использовать только операторы IS NULL или IS NOT NULL.

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