Access может быть создано несколько видов запроса:
· запрос на выборку — выбирает данные из взаимосвязанных таблиц и других запросов. Результатом является таблица, которая существует до закрытия запроса. На основе такого запроса могут строиться запросы других видов. Таблицу с результатами запроса на выборку можно использовать для работы с данными в таблицах, на которых построен запрос. Например, через таблицу запроса можно корректировать данные в исходных таблицах базы данных. Запросы могут служить источниками записей для форм, отчетов и страниц доступа к данным.
Запрос на создание таблицы — также выбирает данные из взаимосвязанных таблиц и других запросов, но, в отличие от запроса на выборку, результат сохраняет в новой постоянной таблице.
· запросы на обновление, добавление, удаление — являются запросами действия, в результате выполнения которых изменяются данные в таблицах
Условия отбора — это ограничения, накладываемые на запрос или расширенный фильтр для определения записей, с которыми он будет работать. Например, вместо просмотра всех поставщиков компании, можно просмотреть только поставщиков из Литвы. Для этого необходимо указать условие отбора, отсеивающее все записи, кроме тех, у которых в поле «Страна» указано «Литва».
Чтобы задать условие отбора для поля в бланке запроса, введите выражение в ячейку Условие отбора для данного поля. В предыдущем примере выражением является «Литва». Могут быть использованы и более сложные выражения, например, «Between 1000 And 5000».
Если запрос содержит связанные таблицы, то в значениях, указанных в условиях отбора для полей из связанных таб лиц, учитывается регистр знаков. Они должны соответствовать регистру значений в базовой таблице.
Сортировка данных. Для удобства просмотра можно сортировать записи в таблице в определенной последовательности. Кнопки сортировки на панели инструментов (или команды меню Записи\Сортировка, Сортировка по возрастанию, Сортировка по убыванию) позволяют сортировать столбцы по возрастанию или убыванию. Прежде чем щелкнуть по кнопке сортировки, следует выбрать поля, используемые для сортировки. Современные СУБД никогда не сортируют таблицы физически, как это делалось раньше. Средства сортировки данных (а также фильтрации, поиска и замены) реализованы в Access как автоматически создаваемые запросы. Записи таблицы всегда располагаются в файле базы данных в том порядке, в котором они были добавлены в таблицу.
Группировкой называется операция размещения данных по группам так, чтобы элементы в каждой группе имеют общий атрибут.
Групповые операции представляют в себе дополнительные возможности по использованию фильтров, в числе и в совершенно новом качестве. Как известно из практики, простое арифметическое увеличение количества применяемых фильтров не слишком улучшает общую картину, и даже, напротив, зачастую приводит к ухудшению результата.
Выражения.
Для создания выражений в запросе используется Построитель выражений. который вызывается кнопкой на панели инструментов. Он позволяет составлять выражения с использованием полей различных баз данных, констант, операторов и функций. Access содержит большое количество встроенных функций, кроме того, программисты могут создавать собственные функции. По встроенным функциям информацию можно получить с помощью справки.
Рассмотрим лишь некоторые средства создания выражений.
Константы.
• Текст должен быть заключен в кавычки (“Пример текста”).
• Дата должна быть заключена между знаками # (например: #31/01/98#).
• Null - соответствует любому выражению, которое ничего не содержит.
• Истина (True) - соответствует логическому выражению, которое принимает истинное значение.
• Ложь (False) - соответствует логическому выражению, которое принимает ложное значение.
Идентификаторы.
• [ ] - выделяет имя объекта, например: [Фамилия]
•! - разделяет имена объектов, например: [СТУДЕНТЫ]! [Фамилия]
Операторы.
• * - умножение
• / - деление
• \ - деление без остатка
• Mod - остаток от деления
• л - возведение в степень
• & - объединение (конкатенация) строк
• Like - позволяет создавать выражения, содержащие символы подстановки. * - соответствует любой группе символов
? - соответствует любому символу. Например: выражение [Фамилия] Like "А*" принимает истинное значение для всех записей, фамилия которых начинается на А.
• Between... And - в указанном диапазоне, например: [Дата рождения] Between #1/1/80# And #31/12/89# принимает истинное значение для всех записей из указанного диапазона
• In - поиск значений в списке.
Например: выражение [Населенный пункт] In ('"Малыгино", "Ковров", "Вязники") принимает истинное значение для всех записей, значение которых попадает в список
• Is - используются для сравнения со значением.
Например: выражение [Фамилия] Is Null принимает истинное значение, когда в поле [Фамилия] нет данных.
Некоторые встроенные функции.
Все функции должны содержать скобки 0.
• Sqr() - квадратный корень.
• Abs() - абсолютное значение.
• Log() - натуральный логарифм.
• Cos(), Sin(), Тст() - косинус, синус, тангенс аргумента.
• Left( строка, количество), Right (строка, количество), Мid (строка, начальная позиция, количество) - вырезают определенное количество символов в начале, конце и середине строки-аргумента
• Trim (строка) - удаляет пробелы в начале и конце строки-аргумента
• IIf (условие, аргумент1, аргумент2) - если условие истинно, возвращает аргумент1, иначе возвращает аргумент2.
• Date() - возвращает текущую дату.
• Year (дата), Month(дата), Day (дата) - возвращают год, месяц, и день из даты.