Чтобы написать SQL-запрос в Access, создайте новый запрос, переключитесь в режим SQL и введите команду SELECT. Access выполнит запрос по таблицам текущей базы и покажет результат как обычную таблицу
Самый простой запрос выглядит так:
SELECT *
FROM Клиенты;
Он показывает все столбцы и все строки из таблицы Клиенты. Для первого запуска это нормально, но в реальной работе лучше выбирать только нужные поля
Первый запрос SELECT в Access
Откройте режим SQL и напишите запрос с конкретными столбцами:
SELECT Имя, Город, Телефон
FROM Клиенты;
Если таблица и поля названы именно так, Access покажет результат. Если появляется ошибка, проверьте названия в левой панели объектов: чаще всего проблема в том, что поле называется чуть иначе
Если в названии поля есть пробел, используйте квадратные скобки:
SELECT [Имя клиента], [Номер телефона]
FROM [Клиенты компании];
Квадратные скобки особенно полезны в Access, потому что в пользовательских базах часто встречаются русские названия с пробелами
Запрос с условием WHERE
Чтобы показать не все строки, а только нужные, добавьте WHERE
SELECT Имя, Город, Телефон
FROM Клиенты
WHERE Город = "Москва";
В Access текстовые значения часто пишут в двойных кавычках. В других базах чаще используют одинарные, поэтому при переносе запроса между системами синтаксис может отличаться
Для чисел кавычки обычно не нужны:
SELECT Название, Цена
FROM Товары
WHERE Цена > 1000;
Сортировка результата
Добавьте ORDER BY, чтобы отсортировать строки
SELECT Название, Цена
FROM Товары
WHERE Цена > 1000
ORDER BY Цена DESC;
DESC сортирует по убыванию. Если его убрать, Access отсортирует по возрастанию
Чем Access SQL отличается от других баз
Access SQL похож на обычный SQL, но не полностью совпадает с SQL Server, PostgreSQL, MySQL или SQLite. Например, в Access часто встречаются квадратные скобки для имен, двойные кавычки для текста, TOP для ограничения строк и свои функции дат
Поэтому запрос из урока по SQL Server может не запуститься в Access без правки. Это нормально: нужно адаптировать синтаксис под конкретную базу
Мини-практика
Создайте таблицу Товары с полями Название, Категория, Цена. Затем выполните запрос:
SELECT Название, Цена
FROM Товары
WHERE Категория = "Техника"
ORDER BY Цена DESC;
Проверьте, что в результате остались только товары из категории «Техника», а самые дорогие стоят выше
Частые ошибки
Первая ошибка — писать запрос не в режиме SQL, а в конструкторе. Конструктор полезен, но ручной SQL пишется именно в SQL View
Вторая ошибка — забывать квадратные скобки вокруг названий с пробелами. Если таблица называется Заказы клиентов, пишите [Заказы клиентов]
Третья ошибка — копировать синтаксис из другой базы. LIMIT, некоторые функции дат и часть строковых функций из других SQL-систем могут не работать в Access
Что почитать дальше по SQL
Если нужен общий маршрут по теме, откройте рубрику SQL. Для соседних задач пригодятся эти разборы:
- SQL-запросы для начинающих: как устроены SELECT, WHERE, JOIN и GROUP BY
- Как написать SQL-запрос в Excel: через Power Query и подключение к базе
- Как открыть SQL в Access: где находится режим SQL и как запустить запрос
- SQL Server и SSMS: установка и первый запрос



