В основе большинства SQL-запросов лежит инструкция SELECT, важнейшие параметры которой приведены в следующем списке:
SELECT Список_полей
FROM Имена_таблиц
WHERE Критерии_поиска
IN Имя_базы_данных
ALL, DISTINCT, DISTINCTROW - предикаты
Таблица1 INNER JOIN Таблица2
GROUP BY Список_полей
HAVING Критерии_поиска
ORDER BY Список_полей
Рассмотрим несложный процесс оформления SQL-запроса.
Примечание:
С целью повышения наглядности каждая инструкция в примерах помещена в отдельную строку. Однако при оформлении SQL-запроса Access требует, чтобы все SQL-инструкции находились в одной строке. Если последовательность инструкций не помещается в одной строке, для перехода на следующую строку следует нажимать не клавишу [Enter], а комбинацию клавиш [Ctrl+Enter].
Пример:
SELECT Клиенты.Фирма
FROM Клиенты,[Потенциальные покупатели]
WHERE Клиенты.Фирма = [Потенциальные покупатели].Фирма;
Внимание!
SQL-запрос всегда завершается точкой с запятой.
При отработке данного запроса анализируются сведения, взятые из таблиц Потенциальные покупатели и Клиенты.
Приведенный запрос состоит из инструкции SELECT с параметрами FROM и WHERE. Инструкция SELECT определяет поля, которые подлежат обработке (будут извлечены и представлены в качестве результата запроса). В рассматриваемом примере это поле Фирма из таблицы Клиенты. Параметр FROM указывает, какие таблицы содержат данное поле (между именами таблиц должны стоять запятые). В нашем примере это таблицы Потенциальные покупатели и Клиенты. С помощью параметра WHERE определяются требования, которым должны соответствовать извлекаемые записи (в рассматриваемом примере — равенство содержимого полей Клиенты. Фирма и [Потенциальные покупатели].Фирма).
При выполнении запроса из таблиц, заданных параметром FROM, извлекаются записи, удовлетворяющие условию WHERE, a из отобранных записей — поля, которые перечислены в инструкции SELECT. Приступая к работе с инструкцией SELECT, необходимо принимать во внимание следующее:
1. Обычно SELECT является первой командой SQL-запроса.
2. Между именами полей следует ставить запятые. Порядок имен полей в списке соответствует порядку их обработки и отображения в результирующем наборе данных.
3. Имя поля, содержащее пробел или разделитель, необходимо заключать в квадратные скобки.
4. При наличии одноименных полей в обрабатываемых таблицах надлежит приводить полную спецификацию поля: Имя_таблицы.Имя_поля.