Ответ
Условия в SQL формируются с помощью трех групп операторов в предложении WHERE, HAVING или ON.
1. Операторы сравнения
Используются для сравнения значений.
=— равно.<>или!=— не равно.>— больше.<— меньше.>=— больше или равно.<=— меньше или равно.
2. Логические операторы
Комбинируют несколько условий.
AND— истинно, если оба условия истинны.OR— истинно, если хотя бы одно условие истинно.NOT— инвертирует результат условия.
3. Специальные операторы для работы с наборами и шаблонами
BETWEEN— проверяет вхождение в диапазон (включительно).IN— проверяет вхождение в список значений.LIKE/ILIKE— сопоставление строки с шаблоном (с использованием%и_).ILIKE— регистронезависимый (в некоторых СУБД).IS NULL/IS NOT NULL— проверка на NULL (использовать= NULLнекорректно!).EXISTS— проверяет существование строк в подзапросе.
Пример комплексного условия:
SELECT id, name, age, city, registration_date
FROM users
WHERE age >= 18
AND city IN ('Moscow', 'London', 'Berlin')
AND (registration_date BETWEEN '2023-01-01' AND '2023-12-31')
AND email IS NOT NULL
AND name LIKE 'A%' -- Имена, начинающиеся на 'A'
AND NOT status = 'banned';
Ключевой момент: Условия вычисляются с учетом приоритета (NOT > AND > OR). Всегда используйте скобки () для явного задания логики, особенно с OR.