Выражение Oracle «НЕ НРАВИТСЯ» не возвращает NULL? - PullRequest
4 голосов
/ 13 февраля 2012

Я пытаюсь запросить таблицу с помощью следующего запроса:

select * from name where firstname NOT LIKE 'PETER%' 

Он не возвращает никаких записей, где firstname равно null.Это какая-то ошибка или это так?Я пришел из SQL Server и путаюсь со многими вещами здесь.

Ответы [ 2 ]

8 голосов
/ 13 февраля 2012

NULL не соответствует LIKE.Вы должны явно запросить это с OR firstname IS NULL

1 голос
/ 13 февраля 2012

Любое сравнение с NULL возвращает «неизвестно» - что в большинстве случаев совпадает с «не соответствует действительности».

Если SQL Server возвращает значения NULL для NOT LIKE 'PETER%', я бы посчитал это ошибкой в ​​SQL Server.

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