Павел Дубнов - Access 2002: Самоучитель стр 33.

Шрифт
Фон

Павел Дубнов - Access 2002: Самоучитель

Рис. 11.2

Формирование запроса с помощью конструктора

Теперь сформируем тот же самый запрос с использованием конструктора.

Как и при запуске мастера, откройте конструктор, выбрав вкладку Запросы окна базы данных. Теперь активизируйте опцию Создание запроса в режиме конструктора. После этого вы увидите окно Добавление таблицы. В нем вам нужно выбрать таблицы и/или запросы, на основе которых следует сформировать запрос (см. рис. 11.3).

Павел Дубнов - Access 2002: Самоучитель

Рис. 11.3

Как мы уже решили, это будет таблица Страны. На экране появится окно конструктора запроса – основного инструмента для построения запроса (см. рис. 11.4). В окне вы видите включенный в него макет таблицы Страны, которую вы только что выбрали. Кроме того, в окне расположены поля репликации (в данном случае они нас не интересуют) и поля таблицы: Код, Страна и Примечание.

Павел Дубнов - Access 2002: Самоучитель

Рис. 11.4

Щелкните дважды по каждому из них, и эти поля будут помещены в бланк запроса, расположенный в нижней части окна (см. рис. 11.5). Как видите, запрос действительно очень прост, и на этом его формирование можно считать завершенным.

Павел Дубнов - Access 2002: Самоучитель

Рис. 11.5

Если вы теперь закроете окно конструктора с помощью обычной кнопки с изображением крестика, то Access 2002 попросит вас подтвердить выполненные операции или внесенные изменения (см. рис. 11.6). Если вы соглашаетесь, система предложит назвать запрос. По умолчанию будет предложено имя Запрос с каким-либо порядковым номером – в нашем случае Запрос20. Затем откроется окно базы данных (см. рис. 11.7).

Access 2002: Самоучитель

Рис. 11.6

Павел Дубнов - Access 2002: Самоучитель

Рис. 11.7

Перед вами та же БД, что была показана на рис. 7.17, только там открыта вкладка Таблицы, а на рис. 11.7 – вкладка Запросы. Вы можете открыть запрос из окна базы данных или щелкнуть по кнопке. В обоих случаях произойдет запуск запроса и на экране появится таблица (см. рис. 11.2).

Представление запроса на языке SQL

Теперь посмотрим, как будет выглядеть наш запрос на программном языке. Переведенный на язык SQL, он называется "инструкция SQL" и представляет точный аналог запроса, сформированного в окне конструктора. Предполагается, что если бы пользователь захотел написать данный запрос на SQL, то он (запрос) выглядел именно так, как показано в этой инструкции. Чтобы увидеть такую инструкцию SQL, дважды щелкните правой кнопкой мыши в верхней части окна конструктора, где уже сформирован запрос (см. рис. 11.5). В появившемся контекстном меню выберите опцию Режим SQL. В результате вы перейдете в окно просмотра инструкций SQL. Это же окно можно открыть и другими способами:

• в меню Вид панели меню Microsoft Access активизировать опцию Режим SQL;

• щелкнуть по стрелке прокрутки рядом с кнопкой

Access 2002: Самоучитель

на панели инструментов, а затем снова выбрать режим SQL.

Текст инструкции SQL приведен на рис. 11.8. Рассмотрим ее подробнее.

Павел Дубнов - Access 2002: Самоучитель

Рис. 11.8

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

Согласно синтаксическим правилам языка SQL перед именем каждого поля указывается имя таблицы, которой принадлежит это поле. Названия таблицы и поля разделены точкой, а каждая пара значений (например, Страны. Код) отделяется от следующей пары запятой.

Ключевое слово FROM определяет таблицу, откуда производится выборка. В данном простейшем запросе используется одна таблица – Страны, не связанная с другими. Поэтому после FROM никаких ключевых полей нет.

Ключевой параметр WITH OWNER ACCESS OPTION не является обязательным. Он позволяет пользователям, которым обычно не разрешается работать с базовыми таблицами, выполнить запрос и просмотреть его результаты – поля, включенные в запрос. Таким образом, пользователь получает право ограниченного доступа к данным таблицы.

Запросы с использованием групповых операций

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

Еще один пример простого запроса: необходимо получить справку о том, сколько человек погибло в результате различных аварий за два с лишним года – с начала 1997 по апрель 2000 года. Полная информация по этому вопросу аккумулирована в таблице Es_oper. В каждой записи о конкретной аварии сведения о жертвах содержатся в поле В том числе погибло.

Запрос, построенный таким образом, востребует данные только из одной таблицы – Es_oper.

Чтобы сконструировать этот запрос, сначала, как и в предыдущем примере, откройте окно базы данных. Затем задайте команды Создание запроса в режиме конструктора Показать таблицу (рис. 11.3). В появившемся окне выберите таблицу Es_oper. На экране возникнет окно конструктора запроса (см. рис. 11.9). В макете таблицы Es_oper на этом рисунке найдите интересующее вас поле В том числе погибло и щелкните по нему дважды.

Павел Дубнов - Access 2002: Самоучитель

Рис. 11.9

Итак, поле В том числе погибло зафиксировано в бланке запроса. Теперь подумаем, как получить сумму значений этого поля по всем записям. Суммирование – стандартная операция, и пользователю не надо специально организовывать сложение (хотя при большом желании вы можете сделать это). Для этого можно использовать опцию Групповые операции. Щелкните по кнопке

Access 2002: Самоучитель

на панели инструментов базы данных, и в бланке запроса появится дополнительная строка Групповая операция (обратите внимание, что на рис. 11.4 ее нет). Если вы теперь щелкнете в этой строке на пересечении с полем В том числе погибло, то появится стрелка прокрутки, которая позволяет открыть список групповых операций:

• Группировка – команда, включаемая в инструкцию SQL. Эта опция позволяет добиться того же результата, что и выполнение следующих действий: создание итогового запроса в окне запроса, а затем выбор для соответствующего поля групповой операции в строке Групповая операция (см. рис. 11.9);

Sum – функция, выполняющая суммирование значений в поле;

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

Min – функция, возвращающая минимальное значение из набора значений, которые содержатся в указанном поле запроса;

Max – функция, возвращающая максимальное значение из набора значений, которые содержатся в указанном поле запроса;

Count – операция, с помощью которой вычисляется количество записей, возвращаемых запросом;

StDev – функция, которая возвращает значение среднеквадратичного отклонения. Последнее вычисляется исходя из набора значений, содержащихся в указанном поле запроса;

Var – функция, возвращающая значение дисперсии. Дисперсия вычисляется в соответствии с теми значениями, которые содержатся в указанном поле запроса;

First – операция, возвращающая первое число из набора значений, которые содержатся в указанном поле запроса;

Last – операция, возвращающая последнее число из набора значений, которые содержатся в указанном поле запроса;

Выражение – функция, возвращающая результат выражения, которое содержится в указанном поле запроса;

Условие – функция, которая определяет, какие записи из таблиц, перечисленных в предложении FROM, следует включить в результат выполнения инструкций SELECT, UPDATE или DELETE.

Ваша оценка очень важна

0
Шрифт
Фон

Помогите Вашим друзьям узнать о библиотеке

Скачать книгу

Если нет возможности читать онлайн, скачайте книгу файлом для электронной книжки и читайте офлайн.

fb2.zip txt txt.zip rtf.zip a4.pdf a6.pdf mobi.prc epub ios.epub fb3