Логические операторы
Основные логические операторы в SQL это AND (И), OR (ИЛИ) и NOT (Отрицание), используемые для комбинирования условий в WHERE для фильтрации данных, возвращающие TRUE, FALSE или UNKNOWN (NULL). К ним также относятся специальные операторы для проверки диапазонов (BETWEEN), списков (IN), соответствия шаблонам (LIKE) и проверки на NULL (IS NULL).
Основные операторы
-
AND: Возвращает TRUE, если оба условия истинны. Например: WHERE age > 20 AND city = 'Moscow'.
-
OR: Возвращает TRUE, если хотя бы одно из условий истинно. Например: *WHERE status = 'Active' OR status = 'Pending'.
-
NOT: Инвертирует результат условия. Например: WHERE NOT country = 'USA'.
Специальные логические операторы
- BETWEEN: Проверяет, находится ли значение в заданном диапазоне (включая границы).
WHERE price BETWEEN 100 AND 200. - IN: Проверяет, соответствует ли значение одному из значений в списке.
WHERE category IN ('Electronics', 'Books'). - LIKE: Поиск подстрок с использованием символов-шаблонов (%, _).
WHERE name LIKE 'A%'. - EXISTS: Проверяет наличие строк, возвращаемых подзапросом.
WHERE EXISTS (SELECT 1 FROM Orders WHERE CustomerID = Customers.ID). - IS NULL / IS NOT NULL: Проверяет, является ли значение NULL (неизвестным).
WHERE email IS NULL. - ALL / ANY: Используются с подзапросами для сравнения с всеми или любым из возвращаемых значений. Ссылка
Приоритет операторов
- Сначала выполняются унарные операторы (NOT).
- Затем бинарные: AND.
- В последнюю очередь: OR.
- Для изменения приоритета используются скобки ()