2016-12-03 3 views
-1

Где я делаю неправильно? Я хочу получить записи, содержащие 1. Нет «бр.». в значении в столбце «POS_AddressLine» и 2. POS_AddressLineNumber равен NULLЗапрос MySQL не работает на Amazon RDS?

Неудачно, я не получаю ожидаемого результата.

SELECT POS_AddressLine, POS_AddressLineNumber 
FROM SKOPJE 
WHERE (POS_AddressLine NOT LIKE '%br.%') OR 
     (POS_AddressLineNumber IS NULL) 

SQL Result ScreenShot here

FYI: версия MySQL Instance на Amazon RDS: MySQL 5.7.11, а также с помощью My WorkBench Ver. 6,3 также попытался с HeidiSQL 9,4-тот же результат :(

+0

Вы сказали, что имеете значение «br.» В значении, а затем используйте «NOT LIKE»? – Robert

ответ

1

Если вы хотите оба условия, а затем использовать AND:.

SELECT POS_AddressLine, POS_AddressLineNumber 
FROM SKOPJE 
WHERE (POS_AddressLine NOT LIKE '%br.%') AND 
     (POS_AddressLineNumber IS NULL); 

NULL Обратите внимание, что не удается NOT LIKE Таким образом, вы можете:

SELECT POS_AddressLine, POS_AddressLineNumber 
FROM SKOPJE 
WHERE (POS_AddressLine NOT LIKE '%br.%' OR POS_AddressLine IS NULL) AND 
     (POS_AddressLineNumber IS NULL); 
+0

Спасибо Гордону за быстрый ответ! Должен признаться, что у меня неправильная логика с данными, и мой вопрос не был нарушен IGHT. Но также упомянуть, что это ценная информация, которую вы мне дали, что NULL терпит неудачу в НЕМЕДЛЕННО в любом случае. Ты помог мне разобраться в другой части. Еще раз спасибо –