Команда WHERE является важнейшей в конструкции SELECT. Она служит для отбора нужных записей согласно некоторому критерию (условию поиска). Условие поиска – это простое или составное логическое выражение. Простое логическое выражение – это два выражения, соединенные операцией отношения: =, <, >, <>, <=, >=, !=.
Выражения могут содержать имена полей и постоянные величины, соединенные допустимыми операциями. Составные логические выражения образовывают из простых или при помощи логических операций NOT, AND, OR и других, как это принято в языках программирования.
Рассмотрим примеры условий поиска:
1) [Название товара]= «телефон»;
2) [Дата изготовления]=#5/21/05#;
3) NOT Продавец= «Афоня» или Продавец != «Афоня»;
4) Мат>3 and Физ>3 and Инф>3;
5) [Цена товара] >20.5 AND [Цена товара]<80.2.
Для последнего примера определена более удобная и компактная конструкция:
[Цена товара] BETWEEN 20.5 AND 80.2.
Все даты за последние 30 дней:
Дата BETWEEN day()-30 AND day().
Даты следует записывать в американском формате месяц/день/год.
Для поиска данных в текстовых полях также полезна операция сравнения LIKE.
Пример 3. Из некоторой таблицы выбрать все записи о фирмах, названия которых начинаются на «Д» и офисы которых зарегистрированы в городах, названия которых начинаются от «А» до «Ж». Сгруппировать фирмы по городам, а города отсортировать по алфавиту.
Решение:
SELECT *
FROM [Конкретная таблица]
WHERE Фирма LIKE «Д*» AND Город LIKE [А-Ж]
GROUP BY Город
ORDER BY Город;
Условия конструируют так же, как и в QBE, только в логических выражениях SQL указывают имена полей.
Приведенная выше конструкция SELECT предназначена для создания запросов на выборку записей из БД.