Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
61
Добавлен:
27.03.2015
Размер:
51.71 Кб
Скачать

Лекция 6. Запросы на выборку данных в Access

1. Понятие запроса. Виды запросов и способы их создания

Запрос  это средство для отбора, обработки, изменения и отображения данных, удовлетворяющим определенным критериям, из таблиц базы данных.

В Access используются три основных вида запросов:

  1. запросы на выборку данных;

  2. перекрестные запросы;

  3. модифицирующие запросы.

Основное назначение запросов на выборку данных  это отбор и обработка данных из таблиц на основании критериев, заданных пользователем, и отображение результатов в виде таблицы.

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

Запросы можно создавать в режиме Конструктора или (в зависимости от назначения и содержания запроса) использовать один из мастеров, имеющихся в Access: Мастер простых запросов, Мастер перекрестных запросов, Мастер по поиску повторяющихся записей, Мастер по поиску записей без подчиненных.

Чтобы создать новый запрос, необходимо перейти на вкладку Создание, где выбрать одну из кнопок Мастер запросов или Конструктор запросов.

Простейший запрос на выборку данных можно создать с помощью Мастера. Он позволяет лишь выбирать поля, отображаемые в результатах запроса, и выполнять некоторые простые вычисления. В то же время Мастер простых запросов не дает возможность задавать условия отбора и сортировки записей, а также редактировать существующий запрос. Это можно делать с помощью Конструктора, который представляет собой наиболее общий способ создания и редактирования запросов.

2. Запрос в режиме Конструктора

Основные особенности режима Конструктора:

  1. В запрос можно включить либо отдельные поля таблиц выбрав их из списка в строке «Поле» либо все поля из одной или нескольких таблиц (например, для выбора всех полей из табл. Товары выбрать из списка Товары.*).

  2. Запрос запускается на выполнение с помощью кнопки Выполнить или кнопки Режим на вкладке Конструктор.

  3. Задать тип запроса можно с помощью одной из кнопок «Выборка», «Создание таблицы» и т.д. (по умолчанию задан тип «Выборка»).

  4. Можно задать вывод либо всех, либо заданного числа записей в результатах запроса, открыв список у кнопки Возврат на вкладке Конструктор и выбрав один из вариантов.

  5. Если требуется задать несколько условий отбора данных, которые должны выполняться одновременно, то все они должны быть указаны в одной строке бланка запроса (обычно это строка «Условие отбора»). Если же требуется задать несколько условий отбора так, чтобы удовлетворялось хотя бы одно из них, то эти условия должны быть указаны в разных строках бланка (строки «Условие отбора», «Или» и т.д.).

  6. Если в запросе должны быть выведены значения полей из таблиц БД, непосредственно не связанных друг с другом, то в запрос также должны быть включены все промежуточные таблицы.

3. Использование параметров и вычислений в запросах

Если запрос требуется выполнять многократно, постоянно изменяя условия отбора, то целесообразно преобразовать его в запрос с параметрами. В бланке такого запроса вместо конкретных величин в условиях отбора указаны названия параметров в квадратных скобках. При запуске запроса с параметрами на выполнение ввести значение каждого параметра в соответствующее диалоговое окно, которое Access выводит на экран.

В Access выражения используются, если надо выполнить одно из следующих действий.

  • Вычислить значения, не содержащиеся в данных в явном виде (значения для полей запросов и элементов управления в форме или отчете).

  • Задать значение по умолчанию для поля таблицы или элемента управления в форме или отчете (отображаются при открытии таблицы, формы или отчета).

  • Задать условие на значение. Условия на значение контролируют значения, которые могут быть введены в поле или элемент управления.

  • Задать условие отбора в запросе

Выражение должно содержать хотя бы 1 оператор и хотя бы 1 операнд.

Операнды

Операнды  это входящие в состав выражений элементы, над которыми выполняются математические и логические операции. Операнды делятся на константы, идентификаторы и функции.

  • Константы это постоянные величины. В Access текстовые константы заключаются в прямые кавычки “ ”, а константы типа Дата/Время  в символы # #. Логические константы, используемые в Access:

True  - «Истина», False - «Ложь», Null  - неопределенное значение

  • Идентификаторы  это имена объектов Access, которые возвращают определенные числовые или текстовые значения. Объекты Access  это базы данных, таблицы, поля, запросы, формы и отчеты. Термин « возвращают» в применении к выражениям означает подстановку в выражение текущего значения идентификатора вместо его имени.

  • Функции, так же как и идентификаторы, возвращают значение вместо имени функции. В отличие от идентификаторов, для функций требуется указать их аргументы в скобках после имени функции. В Access определены около 140 встроенных функций, сгруппированных по назначению:

  1. математические и тригонометрические функции;

  2. текстовые функции;

  3. функции даты и времени;

  4. функции преобразования типов данных;

  5. финансовые функции;

  6. функции смешанного типа.

Операторы

Оператор  это символ или группа символов, обозначающие определенную операцию над элементами, входящими в состав выражений. В выражениях Access используются следующие категории операторов:

  1. Арифметические операторы выполняют основные арифметические действия. Операторы +, -, *, /,^ выполняют сложение, вычитание, умножение, деление, возведение в степень соответственно.

  2. Операторы присваивания и сравнения. В качестве оператора присваивания используется знак равенства = ; этот оператор присваивает значение объекту Access или переменной. Операторы сравнения сравнивают значения двух операндов и возвращают логические константы True ( Истина) или False (Ложь), соответствующие результату сравнения. К числу операторов сравнения относятся : = (равно), < (меньше), > (больше), <= (меньше или равно), >= (больше или равно), <> (не равно).

  3. Логические операторы используются для выполнения операций над логическими выражениями. В выражениях Access используются в основном следующие логические операторы:

а) And (логическое «И»). Если А, В  логические операнды, то А And В = True, если А=В = True, и А And В = False в противном случае;

б) Or (логическое «ИЛИ»). Если А, В  логические операнды, то А Or В = True, если хотя бы один из операндов А, В имеет значение True, и А Or В = False в противном случае;

в) Not (логическое отрицание). Если А  логический операнд, то Not А = False, если А = True, и Not А = True, если А = False;

г) Eqv (логическое сравнение). Если А, В  логические операнды, то А Eqv В = True, если значения обоих операндов одинаковы (оба True или оба False);

д) Xor. А Xor В = True, если хотя бы один из операндов А, В имеет значение True, но не оба одновременно.

  1. Оператор слияния строковых значений (конкатенации) & объединяет два текстовых значения в одно, например: ABC & DEF = ABCDEF.

  2. Операторы идентификации ! и . создают однозначные имена для объектов базы данных. Например, поле Название в таблице Клиенты можно записать так: Клиенты![Название].

Для записи выражений можно использовать либо окно ввода (вызывается на экран комбинацией клавиш Shift+F2), либо Построитель выражений (вызывается на экран либо командой Построитель на вкладке «Конструктор», либо командой Построить из контекстного меню в ячейке бланка запроса).

Пример выражения:

Сумма: [Товары]! [Цена]* [Заказы]! [Количество]*(1-[Заказы]! [Скидка]) вычисление суммы заказа при наличии скидки. В этом примере перед наименованием каждого поля указано имя таблицы. Это обязательно лишь в том случае, если поля с одинаковыми именами встречаются в разных таблицах. Имя вычисляемого поля отделено от выражения знаком :

Соседние файлы в папке Лекции