Условия отбора записей из запрошенных в команде выборки данных определяются ключевым словом WHERE и идущим за ним набором логических условий.
В каждом условии посредством операторов сравнения задается проверка соответствия
некоторого выражения (как правило значения поля БД) заданному значению в формате
<выражение1> <оператор сравнения> <выражение2>, выражение
1 и выражение 2 (3 и т.д.) - выражения, которые могут состоять из констант, названий полей
данных, функций и подзапросов, объединенных арифметическими операторами и скобками.
Например, при заданном в запросе условии Квартал='105', в таблице результатов
будут выведены все записи БД слоя, для которых в поле Квартал задано
значение 105.
Условия отбора могут объединяться с использованием логических операторов NOT, AND, OR. («Применение логических операторов»)
Полный список доступных операторов сравнения приведен в таблице далее:
Таблица 10. Операторы сравнения
| Оператор | Описание | Примеры |
|---|---|---|
| IS NULL, IS NOT NULL |
Выражение IS NULL проверяет, равно ли выражение в левой
части оператора - Выражение IS NOT NULL соответственно проверяет
неравенство значения |
|
| = |
Проверяется равенство значений. Проверка равенства для строковых значений с учетом регистра значений, т.е.
значение | Квартал='105' (Здания относящиеся к 105 кварталу) |
>, <
| Операторы «строгого» неравенства, проверяется что значение в левой части выражения строго больше, либо строго меньше значения в правой. |
|
| >=, <= | Операторы «нестрогого» неравенства, проверяется что значение в левой части выражения больше либо равно, или меньше либо равно значению в правой части. |
|
| !<, !> | Альтернативная запись операторов нестрого неравенства. Проверяется что значение в левой части выражения не меньше, либо не больше значения в правой части. |
|
| <>, != | Операторы неравенства. Проверяется, неравенство значений. |
|
| BETWEEN | Операция сравнения, проверяющая расположение значения в левой части выражения
в заданном диапазоне значений в правой части выражения. Оператор задается в
формате <выражение
1>BETWEEN<1>AND<2>,
где <1> и <2> нижняя и верхняя
границы допустимых значений. |
|
| LIKE |
Проверяется соответствие строкового значения шаблону, заданному в параметре оператора LIKE. В шаблоне могут использоваться буквы алфавита и знаки препинания, а также различные символы и выражения подстановки:
Для поиска в исходной строке самих символов подстановки можно заключать их в
квадратные скобки (например |
|
| IN |
Проверяется соответствие значения одному из значений перечисленному после
ключевого слова IN в формате
Список допустимых значений может быть результатом выполнения подзапроса («Подзапросы»). | Улица IN ('Нахимова', '1й Южный пер.') (все здания
располагающиеся на улицах Нахимова и 1й Южный пер.) |
| EXISTS | Операция сравнения, которая возвращает TRUE, если подзапрос (subquery) возвращает по крайней мере одну строку («Подзапросы»). | EXISTS (subquery) |