Запрос к базе данных

Запросы позволяют выбирать из таблиц только те данные, которые интересуют пользователя. В нашем случае не составляет труда просмотреть любую таблицу БД и найти в ней нужные данные. Однако если мы имеем таблицу с тысячами и сотнями тысяч записей, например БД "Толковый словарь русского языка", поиск нужного слова может потребовать много времени.

Формулировка запроса позволяет проводить сложный поиск и обработку информации, что обеспечивается специальными опциями СУБД Access и подробно описано в соответствующей справочной литературе. Мы остановимся на нескольких примерах.

Любой запрос строится с помощью Конструктора запросов.

Для вызова Конструктора запросов нажмите кнопку Создание и затем Конструктор запросов в верхней части основного окна Access. На экране появится новое окно Конструктора запросов (контекстное меню), в котором вы сможете создать ваш запрос. Но сначала раскрывается диалоговое окно Добавление таблицы, в котором можно выбрать таблицы, содержащие нужные для формулирования запроса данные (таблица СЛОВА). Далее необходимо щелкнуть мышью кнопку Добавить, затем Закрыть. В таблице в нижней части экрана следует выбрать поля, которые пользователь хочет включить в свой запрос.

При работе с базой данных Access может возникнуть необходимость формирования запроса на выборку всех слов, начинающихся с определенной буквы или последовательности букв. Для создания такого вида запроса нужно в строке Условие отбора вписать последовательность Like "в*". Такая запись означает, что при реализации запроса будут выбраны все записи таблицы СЛОВА, начинающиеся с буквы "в". Далее достаточно будет нажать кнопку Выполнить в верхней части экрана, для того чтобы на экране появилась таблица всех слов таблицы СЛОВА, начинающихся с буквы "в".

Преобразование всех слов таблицы в нижний регистр

Для решения поставленной задачи, а именно – создание частотного словаря частей речи в сказке "Петух и жерновцы", необходимо поменять регистр слов подготовленной на предыдущем этапе таблицы. Результат преобразования должен быть записан в новое поле таблицы СЛОВА. Для реализации этой операции откройте таблицу СЛОВА и добавьте название нового поля (НСЛОВО) в верхней строке таблицы, затем перейдите в Конструктор запросов. Во вкладке Добавление таблицы выберите таблицу СЛОВА и закройте вкладку. В строке Поле левого столбца нажмите стрелку и выберите то поле, которое подлежит обработке или выборке (в нашем случае поле СЛОВО).

В строке Поле следующего столбца выберите поле, в котором будет храниться результат преобразования слов в нижний регистр (Н_СЛОВО) и припишите последовательность: LCase([СЛОВО]). В результате этих действий будет получено Н_СЛОВО: LCase([C/IOBO]). Функция LCase преобразует все буквы в строчные, а аргумент функции [СЛОВО] определяет, что данная операция применяется ко всем элементам поля СЛОВО таблицы СЛОВА. На следующем шаге нажмите кнопку Выполнить в верхней части экрана.

В итоге мы получим таблицу с полем Н_СЛОВО, где содержатся все слова из поля СЛОВО в нижнем регистре.

Формирование списка с уникальными значениями и частотами их встречаемости в таблице

Откройте форму нового запроса, далее в строке Групповая операция выберите команду Группировка. В следующем столбце заполните: Поле – значением СЛОВО, Групповую операцию – значением Count, Сортировку – значением По убыванию (рис. 14.2). Нажмите кнопку Выполнить в верхней части экрана. На экране появится таблица уникальных словоформ сказки в одном столбце и частот встречаемости каждой словоформы в следующем столбце.

Рис. 14.2. Запрос таблицы уникальных словоформ сказки и частот встречаемости каждой словоформы