Пример 15.
Задание условий выборки
Пример 14.
Пример 13.
SELECT [Имя], [Фамилия] FROM Студент
SELECT TOPS [Фамилия] FROM Студент
SELECT TOP5 [Фамилия] FROM Студент ORDER BY [Группа]
В первом случае выбираются все записи таблицы СТУДЕНТ в составе указанных полей. Если отбираются все поля в том же самом порядке, что и в структуре таблицы, можно указать символ точки Во втором случае отбирается пять первых фамилий студентов, в третьем случае выбирается пять первых фамилий студентов, упорядочение записей осуществлено по учебным группам
Если используются одноименные поля из нескольких таблиц, включенных в предложение FROM, следует указать перед именем такого поля имя таблицы через (точку) [Студент заочник] [Группа] и [Студент] [Группа] — два одноименных поля из разных таблиц
Для изменения заголовка столбца с результатами выборки используется служебное слово AS.
SELECT DISTINCT [Дата рождения] AS Юбилей FROM Студент SELECT [Фамилия]& &[Имя] AS ФИО, [Дата рождения] AS Год FROM Студент
В первом случае будут выведены неповторяющиеся даты рождения студентов, которые имеют новое наименование — Юбилей. Во втором случае в результирующей таблице присутствуют все записи, но вместо [Дата рождения] указан Год и вместо Фамилия и Имя, соединенных вместе через пробел, — ФИО.
Наиболее часто слово AS применяется для именования вычисляемых полей.
Предложение WHERE может содержать выражения, связанные логическими операторами, с помощью которых задаются условия выборки (табл. 2).
Таблица 2. Логические условия для построения условий выборки
Оператор | Назначение | Оператор | Назначение | Оператор | Назначение |
AND | Логическое И или конъюнкция (логическое умножение) | Imp | Логическая импликация выражений | Or | Логическое ИЛИ, дизьюнкция (включающее Or) |
Eqv | Проверка логической эквивалентности выражений | Not | Отрицание | Хог | Логическое ИЛИ (исключающее Or) |
Кроме того, могут использоваться операторы для построения условий:
LIKE — выполняет сравнение строковых значений;
BETWEEN...AND — выполняет проверку на диапазон значений;
IN — выполняет проверку выражения на совпадение с любым из элементов списка;
IS — проверка значения на Null;
Условие обеспечивает «горизонтальную» выборку данных, т. е. результатом запроса будут только те записи, которые удовлетворяют сформулированным условиям.
SELECT Студент.* FROM Студент WHERE [Дата рождения]>=#01.01.79#
SELECT Студент.* FROM Студент WHERE [Дата рождения]>=#01.01.79# AND [Группа] IN ("I212", "1213")
SELECT Студент.* FROM Студент WHERE [Дата рождения] BETWEEN #01.01.79# AND #01.0I.81# AND [Группа] IN ("1212", "1213")
SELECT Студент.* FROM Студент INNER JOIN [Студент заочник] On Студент.[Группа]= [Студент заочник].[Группа] WHERE Студент.[Дата рождения] >=#01.01.79#
В первом случае выбираются студенты, дата рождения которых позже 1.1.79. Во втором случае будут отобраны все студенты, обучающиеся в группах 1212 или 1213 и дата рождения которых позже 1.1.79. В третьем случае выбираются студенты, дата рождения которых находится в заданном диапазоне, и они обучаются в любой из указанных групп. В четвертом случае выбираются студенты, которые обучаются в тех же группах, что и студенты-заочники, дата рождения которых позже 01.01.79.