Пример 4.5. Список клиентов из Москвы или из Самары.
Пример 4.4. Список товаров, цена которых больше или равна 100 и меньше или равна 150.
Пример 4.3. Операции отпуска товаров объемом больше 20.
Сравнение
Предложение WHERE
С помощью WHERE-параметра пользователь определяет, какие блоки данных из приведенных в списке FROM таблиц появятся в результате запроса. За ключевым словом WHEREследует перечень условий поиска, определяющих те строки, которые должны быть выбраны при выполнении запроса. Существует пять основных типов условий поиска (или предикатов):
Сравнение: сравниваются результаты вычисления одного выражения с результатами вычисления другого.
Диапазон: проверяется, попадает ли результат вычисления выражения в заданный диапазон значений.
Принадлежность множеству: проверяется, принадлежит ли результат вычислений выражения заданному множеству значений.
Соответствие шаблону: проверяется, отвечает ли некоторое строковое значение заданному шаблону.
Значение NULL: проверяется, содержит ли данный столбец определитель NULL (неизвестное значение).
В языке SQL можно использовать следующие операторы сравнения: = – равенство; < – меньше; > – больше; <= – меньше или равно; >= – больше или равно; <> – не равно.
Пример 4.3. Показать все операции отпуска товаров объемом больше 20.
SELECT * FROM Сделка
WHERE Количество>20
Более сложные предикаты могут быть построены с помощью логических операторов AND, OR или NOT, а также скобок, используемых для определения порядка вычисления выражения. Вычисление выражения в условиях выполняется по следующим правилам:
Выражение вычисляется слева направо.
Первыми вычисляются подвыражения в скобках.
Операторы NOT выполняются до выполнения операторов AND и OR.
Операторы AND выполняются до выполнения операторов OR.
Для устранения любой возможной неоднозначности рекомендуется использовать скобки.
Пример 4.4. Вывести список товаров, цена которых больше или равна 100 и меньше или равна 150.
SELECT Название, Цена
FROM Товар
WHERE Цена>=100 And Цена<=150
Пример 4.5. Вывести список клиентов из Москвы или из Самары.
SELECT Фамилия, ГородКлиента
FROM Клиент
WHERE ГородКлиента="Москва" Or
ГородКлиента="Самара"
Оператор BETWEEN используется для поиска значения внутри некоторого интервала, определяемого своими минимальным и максимальным значениями. При этом указанные значения включаются в условие поиска.
Пример 4.6. Вывести список товаров, цена которых лежит в диапазоне от 100 до 150 (запрос эквивалентен примеру 4.4).