Логические операторы AND
, OR
и NOT
в SQL используются с операторами WHERE или HAVING.
Оператор AND в SQL
Оператор AND извлекает данные только, если все условия истинны (true
). Например:
1 2 3 |
SELECT first_name, last_name FROM Customers WHERE country = 'USA' AND last_name = 'Doe'; |
Здесь мы извлекаем имя (first_name) и фамилию (last_name) тех клиентов из таблицы Customers, чья страна — USA
И фамилия — Doe
.
Оператор OR в SQL
Оператор OR извлекает данные, если хотя бы одно из условий истинно (true
). Например:
1 2 3 |
SELECT first_name, last_name FROM Customers WHERE country = 'USA' OR last_name = 'Doe'; |
Здесь мы извлекаем имя (first_name) и фамилию (last_name) тех клиентов из таблицы Customers, чья страна — USA
ИЛИ фамилия — Doe
.
Оператор NOT в SQL
Оператор NOT извлекает данные только, если условие ложное (false
). Например:
1 2 3 |
SELECT first_name, last_name FROM Customers WHERE NOT country = 'USA'; |
Здесь мы извлекаем имя (first_name) и фамилию (last_name) тех клиентов из таблицы Customers, чьей страной НЕ является USA
.
Объединение нескольких операторов
Также можно комбинировать несколько операторов AND
, OR
и NOT
в одном SQL-стейтменте. Например, если мы хотим выбрать всех клиентов из таблицы Customers, страна которых — USA
или UK
и возраст меньше 26 лет:
1 2 3 |
SELECT * FROM Customers WHERE (country = 'USA' OR country = 'UK') AND age < 26; |
Рассмотрим другой пример:
1 2 3 |
SELECT * FROM Customers WHERE NOT country = 'USA' AND NOT last_name = 'Doe'; |
Здесь мы извлекаем всех клиентов из таблицы Customers, чьей страной НЕ является USA
, а фамилия — НЕ Doe
.