Элементы языка SQL. SQL-запросы

Страницы работы

Фрагмент текста работы

SQL – запросы

       С помощью языка SQL (structured query language) можно создавать запросы к реляционным базам данных (таким как Access), актуализировать их и управлять ими.  Когда  пользователь проектирует  QBE – запрос (query by example)  в  окне  запросов,  Access  конструирует на заднем плане соответствующий SQL – запрос. Для отображения на экране и редактирования SQL – запроса следует выбрать из меню ВИД команду SQL при активном окне проектирования запроса. Если в SQL – запросе производятся изменения, QВЕ – запрос автоматически актуализируется в окне запроса.

       SQL – запросы могут служить не только для извлечения из базы информации, которая будет анализироваться пользователем. С их помощью можно получать сведения для формы и отчета, заполнять поля списков в формах.

       SQL – запрос составляется из SQL – инструкций. Они задают, что необходимо сделать с входным набором данных для генерации выходного набора. Извлеченную информацию  можно обработать с помощью специальных анализирующих функций. Такая обработка позволяет, например, получать минимальные и максимальные значения, суммы, средние значения данных, полученных из базы с помощью SQL – запроса.

SQL – инструкции

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

       SELECT  Список_полей

              FROM Имена_таблиц

WHEREКритерии_поиска

IN Имя_базы_данных

ALL –  , DISTINCT –  , DISTINCTROW –  предикаты

Таблица 1 INNER JOIN Таблица 2

GROUP BY Список_полей

HAVING Критерии_поиска

ORDER BY Список_полей

Инструкция SELECT

       Рассмотрим простейшийпример оформления SQL – запроса.

Примечание

Для большей наглядности инструкции в примерах стоят в отдельных строках. Однако Access при оформлении SQL – запроса требует, чтобы все составляющие его SQL – инструкции были записаны одной строкой. Если последовательность не помещается в одной строке, то для перехода на следующую строку следует нажимать не [Enter], а комбинацию [Ctrl+Enter].


Пример

SELECT *

FROM [Список сотрудников]

WHERE ((([Список сотрудников].Образование)="высшее" Or

([Список сотрудников].Образование)="сред.спец."));

Внимание

SQL – запрос всегда заканчивается точкой с запятой.

 


       Запрос состоит из инструкции SELECT, дополненной параметрами FROM и WHERE. Список полей в нашем примере не определен. ­ - означает, что будут выбраны все поля таблицы, определенной с помощью параметра FROM. С помощью параметра WHERE задаются условия, которым должны удовлетворять, извлекаемые записи. В нашем случае это -

Образование="высшее"  или  Образование="сред.спец."

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

1.  Обычно SELECT первая команда запроса.

2.  Если задается больше одного поля, имена полей отделяются запятыми. Список полей вводятся в той последовательности, в которой они должны быть отображены в результате запроса.

3.  Если имя поля содержит пробел, то его необходимо заключить в квадратные скобки.

4.  Если обрабатываются несколько таблиц с одинаковыми названиями полей необходимо во избежание ошибок давать полную спецификацию поля т.е. Имя_таблицы.Имя_поля. Именно так сделано в нашем примере.

Параметр FROM

       Параметр FROM задает таблицы или запросы, которые содержат поля, приведенные в инструкции SELECT , т.е. задает список обрабатываемых таблиц и запросов.

       Следует учесть, что:

1.  FROM задается как параметр для инструкции SELECT и всегда следует за ней.

2.  В списке таблиц сначала всегда следует указывать меньшую или меньшие таблицы.

Параметр WHERE

       Параметр WHERE не обязателен, но если он присутствует в инструкции, то должен следовать за параметром FROM. Если WHERE не задан, при выполнении SQL – запроса будут выбраны все записи.

С помощью WHERE – параметра  Access выбирает записи, удовлетворяющие условиям, определенным с помощью параметра WHERE.

Параметр ALL

       Параметр WHERE определяет критерий отбора записей из выходного набора. Но в таблице могут присутствовать дубликаты. Речь идет о том, что в таблицу могут быть занесены записи об одном и том же сотруднике дважды. По умолчанию команде SELECT сопутствует предикат ALL. Его можно даже явно не указывать. ALL включается в команду SELECT сразу же за ключевым словом SELECT (пред именами отбираемых полей).

Пример

SELECT ALL *

FROM [Список сотрудников];

Выполнив такой запрос, выбираются из таблицы Сотрудники все записи

Похожие материалы

Информация о работе