У меня есть таблица, которая выглядит следующим образом:MySQL: WHERE статус не так, как «пример%» не возвращает результат со статусом NULL
+---------+----------+-----------------+
| name | age | status |
+---------+----------+-----------------+
| Clark | 25 | Example |
+---------+----------+-----------------+
| Peter | 28 | Example2 |
+---------+----------+-----------------+
| Waldo | 37 | NULL |
+---------+----------+-----------------+
| Tarzan | 31 | Unknown |
+---------+----------+-----------------+
Когда я выполнить запрос следующим образом:
SELECT * FROM records WHERE status NOT LIKE 'example%'
я получаю:
+---------+----------+-----------------+
| name | age | status |
+---------+----------+-----------------+
| Tarzan | 31 | Unknown |
+---------+----------+-----------------+
Если изменить запрос к (заметьте, что я удалил NOT
):
SELECT * FROM records WHERE status LIKE 'example%'
Затем я получаю следующее:
+---------+----------+-----------------+
| name | age | status |
+---------+----------+-----------------+
| Clark | 25 | Example |
+---------+----------+-----------------+
| Peter | 28 | Example2 |
+---------+----------+-----------------+
Мой вопрос: где Уолдо?
Ahh, thanks @Dai, я действительно знал ответ уже и просто пытался надеть его на StackOverflow для всех, у кого может быть проблема, но спасибо за правильный ответ в любом случае! Документ, который вы связывали, говорит о операторах сравнения, но не о 'LIKE', который я * думал *, был другой конструкцией. – Bing