Для ограничения отбираемой из базы данных информации оператор SELECT позволяет использовать условие, которое задается с помощью предложения WHERE. В случае реализации условной выборки оператор SELECT имеет следующий вид:
SELECT {* | ALL | DISTINCT поле1. поле2 полеN }
FROM Таблица! (. Таблица2,…… ТаблицаN}
WHERE условие
Специальные операторы языка SQL, применяемые для задания условий, можно разделить на следующие группы: операторы сравнения; логические операторы; операторы объединения; операторы отрицания.
Результатом выполнения каждого из этих операторов является логическое значение (true или false). Если для некоторой записи оператор возвращает значение true, то запись включается в результат выборки, если false — не включается.
Операторы сравнения используются в SQL-запросах для наложения ограничений на информацию, возвращаемую в результате выполнения запроса. Это типичные операторы, существующие во всех алгоритмических языках:
· оператор равенства (=) используется для отбора записей, в которых значение определенного поля точно соответствует заданному;
|
|
· оператор неравенства (<>) возвращает значение true, если значение поля не совпадает с заданным значением;
· операторы «меньше» (<) и «больше» (>) позволяют отбирать записи, в которых значение определенного поля меньше или больше некоторой заданной величины;
· операторы «меньше или равно» (<=) и" «больше или равно» (>=) представляют собой объединение операторов «меньше» и «равно», «больше» и «равно» (в отличие от операторов < и >, операторы <= и >= возвращают значение true, если значение поля совпадает с заданным значением).
В качестве примера рассмотрим запрос, выбирающий из таблицы Товары только те записи, категория товаров в которых равна 2:
SELECT * FROM Товары WHERE Категория=2
Результат выполнения данного запроса показан на рис.7.
Рис.7. Результат выполнения запроса с условием
Логические операторы
К логическим относятся операторы, в которых для задания ограничений на отбор данных используются специальные ключевые слова. В SQL определены следующие логические операторы: Is null, BETWEEN...AND, IN, LIKE, EXISTS, UNIQUE, ALL, ANY.
Оператор IS NULL
Оператор IS NULL предназначен для сравнения текущего значения поля со значением NULL. Он используется для отбора записей, в некоторое поле которых не занесено никакого значения.
Для иллюстрации использования этого оператора воспользуемся таблицей Клиенты. С помощью приведенного ниже запроса произведем выборку из нее записей, в которых не указано название предприятия:
SELECT Фамилия. Имя. Отчество. Телефон. Город. Адрес
FROM Клиенты
WHERE Предприятие IS NULL
Результат выполнения запроса показан на рис.8.
Рис. 8. Пример использования оператора IS NULL