MS Access 2007 SQL "не нравится" игнорирует пустые ячейки - PullRequest
1 голос
/ 17 февраля 2011

Я смущен каким-то SQL, который я пытаюсь запустить.Вот пример набора данных

Username ID        Text1
red55   1235342     fdfdf
black   5542121     sdsd
red32   5542145     sffrds
green   5542911         
bluee   5333121     ffds

Так что SQL будет

SELECT username, ID, Text1 
  FROM user_info
 WHERE username NOT LIKE 'red*' 
       AND text1 NOT LIKE 'sd*';

Так что я ожидаю увидеть набор результатов

Username ID        Text1
green   5542911         
bluee   5333121     ffds

Но этот работа.Кажется, игнорировать пустые значения.Я хотел бы видеть только одну запись (не как две выше).Мне нужно, чтобы мой SQL просто сказал показать мне записи, которые не начинаются с «красного», а также любые записи, которые не начинаются с «sd».Тем не менее, он либо избавляется от всех этих пробелов И, или, если я использую оператор ИЛИ, избавляется от них.

Есть идеи?Я застрял здесь!

1 Ответ

5 голосов
/ 17 февраля 2011

Вам нужно явно обработать нули.Один из вариантов будет:

SELECT username, ID, Text1 
FROM user_info 
WHERE (username Is Null OR username NOT LIKE 'red*')
  AND (text1 Is Null OR text1 NOT LIKE 'sd*')
...