Инструкция SELECT

Применяется к
Access для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Инструкция SELECT предписывает ядру СУБД Microsoft Access вернуть сведения из базы данных в виде набора записей.

Синтаксис

SELECT [предикат] { * | table.* | [table.]field1 [AS alias1] [, [table.]field2 [AS alias2] [, ...]]}
FROM tableexpression [, ...] [IN externaldatabase]
[WHERE... ]
[GROUP BY... ]
[HAVING... ]
[ЗАКАЗ ПО... ]
[С ПАРАМЕТРОМ OWNERACCESS]

Инструкция SELECT включает приведенные ниже элементы.

Элемент Описание
предикат Один из следующих предикатов: ALL, DISTINCT, DISTINCTROW или TOP. Предикаты используются для ограничения числа возвращаемых записей. Если предикат не задан, по умолчанию используется ALL.
* Указывает на то, что из заданной таблицы или таблиц выбираются все поля.
таблица Имя таблицы, содержащей поля с выбранными записями.
поле1, поле2 Имена полей, содержащих извлекаемые данные. Если задано несколько полей, данные будут извлекаться в порядке перечисления их имен.
псевдоним1, псевдоним2 Имена, которые используются в качестве заголовков столбцов вместо исходных названий столбцов в таблице.
табличное_выражение Одно или несколько имен таблиц, содержащих извлекаемые данные.
внешняя_база_данных Имя базы данных, содержащей таблицы, указанные в компоненте табличное_выражение, если их нет в текущей базе данных.

Примечания.

Для выполнения данной операции ядро СУБД Microsoft Access выполняет поиск указанной таблицы или таблиц, извлекает указанные столбцы, выбирает строки, отвечающие условию и сортирует полученные строки в указанном порядке.

Инструкции SELECT не изменяют данные в базе данных.

SELECT обычно является первым словом в инструкции SQL. SELECT и SELECT...INTO — наиболее распространенные инструкции SQL.

Минимальный синтаксис инструкции SELECT выглядит следующим образом:

SELECT поля FROM таблица

Чтобы выбрать все поля в таблице, можно использовать звездочку (*). В приведенном ниже примере показано, что в таблице "Сотрудники" выбраны все поля.

SELECT * FROM Employees;

Если имя поля включается в несколько таблиц в предложении FROM, перед ним следует укажите имя таблицы и оператор . (точка). В следующем примере поле "Отдел" встречается сразу в двух таблицах: "Сотрудники" и "Руководители". С помощью инструкции SQL можно выбрать отделы из таблицы "Сотрудники" и имена руководителей из таблицы "Руководители".

SELECT Employees.Department, Supervisors.SupvName FROM Employees INNER JOIN Supervisors WHERE Employees.Department = Supervisors.Department;

При создании объекта RecordSet имя поля таблицы используется ядром СУБД Microsoft Access в качестве имени объекта "Поле" в объекте Recordset. Если требуется другое имя поля или оно не подразумевается выражением, используемым для создания поля, используйте зарезервированное слово AS. В следующем примере показано, как заголовок "Дата_рождения" используется для присвоения имени возвращенному объекту Поле в полученном объекте Recordset.

SELECT BirthDate AS Birth FROM Employees;

При использовании агрегатных функций или запросов, которые возвращают неоднозначные или повторяющиеся имена объекта Поле, необходимо использовать предложение AS, чтобы присвоить объекту Поле другое имя. В приведенном ниже примере возвращенному объекту Поле в полученном объекте Recordset присваивается имя "Количество_сотрудников".

SELECT COUNT(EmployeeID) AS HeadCount FROM Employees;

При работе с инструкцией SELECT можно использовать дополнительные предложения для дальнейшего ограничения и упорядочения полученных данных. Дополнительные сведения см. в разделе справки, посвященном используемому предложению.