Команда NOT
задает отрицание для других
команд: вместо IN
можно написать NOT IN, вместо BETWEEN
- NOT BETWEEN и так далее.
Как это работает: возьмем, для примера, команду
IN и с ее помощью выберем записи, у которых
id имеет значение 1
, 3
, 7
,
14
, 28
. Это будет выглядеть
так: WHERE id IN (1, 3
, 7
,
14
, 28).
А теперь воспользуемся отрицанием NOT
и выберем все записи, у которых id НЕ равен
1
, 3
, 7
, 14
,
28
таким образом: WHERE id NOT
IN (1, 3
, 7
, 14
, 28).
Синтаксис
NOT IN (значение1, значение2...)
NOT BETWEEN значение1 AND значение2
NOT LIKE шаблон
Таблицы для примеров
id айди |
name имя |
age возраст |
salary зарплата |
---|---|---|---|
1 | user1 | 23 | 400 |
2 | user2 | 25 | 500 |
3 | user3 | 23 | 500 |
4 | user4 | 30 | 900 |
5 | user5 | 27 | 500 |
6 | user6 | 28 | 900 |
Пример
Давайте выберем из таблицы записи с id, НЕ
равным 1
, 3
и 5
:
SELECT * FROM employees WHERE id NOT IN (1, 3, 5)
Результат выполнения кода:
id айди |
name имя |
age возраст |
salary зарплата |
---|---|---|---|
2 | user2 | 25 | 500 |
4 | user4 | 30 | 900 |
6 | user6 | 28 | 900 |
Пример
Давайте выберем записи с id, НЕ между 3
и 5
:
SELECT * FROM employees WHERE id NOT BETWEEN 3 AND 5
Результат выполнения кода:
id айди |
name имя |
age возраст |
salary зарплата |
---|---|---|---|
1 | user1 | 23 | 400 |
2 | user2 | 25 | 500 |
6 | user6 | 28 | 900 |
Смотрите также
-
команду IS NULL,
которая проверяет поле на NULL -
команду IS NOT NULL,
которая проверяет поле на не NULL