Інструкція SELECT
Інструкція SELECT пропонує ядру СУБД Microsoft Access повернути відомості з бази даних у вигляді набору записів.
SELECT [предикат] < *таблиця.* [таблиця.]поле1[ASпсевдонім1] [, [таблиця.]поле2[ASпсевдонім2] [, . ]]> FROMтабличний_вираз[, . ] [INзовнішня_база_даних] [WHERE. ] [GROUP BY. ] [HAVING. ] [ORDER BY. ] [WITH OWNERACCESS OPTION]
Інструкція SELECT включає наведені нижче елементи.
Один із наступних предикатів: ALL, DISTINCT, DISTINCTROW або TOP. Предикати використовуються для обмеження числа записів, що повертаються. Якщо предикат не заданий, за промовчанням використовується ALL.
Вказує на те, що із заданої таблиці або таблиць вибираються всі поля.
Ім'я таблиці, що містить поля із вибраними записами.
Імена полів, що містять дані. Якщо встановлено кілька полів, дані будуть вилучатися в порядку перерахування їх імен.
Імена, які використовуються як заголовки стовпців замість вихідних назв стовпців втаблиці.
Одне або кілька імен таблиць, що містять дані.
Ім'я бази даних, що містить таблиці, зазначені в компонентітабличне_вираз, якщо їх немає в поточній базі даних.
Примітки.
Для виконання цієї операції ядро СУБД 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 можна використовувати додаткові пропозиції для подальшогообмеження та впорядкування отриманих даних. Додаткові відомості див. у розділі довідки, присвяченому запропонованій пропозиції.