Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по информатике.doc
Скачиваний:
130
Добавлен:
26.11.2018
Размер:
3.8 Mб
Скачать
    1. Лекция 9. Параметрические запросы

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

Чтобы установить параметр, вместо того, чтобы вводить конкретное значение в строку Условия отбора, нужно ввести в нее имя или фразу, заключенную в квадратные скобки. Эта фраза будет выводиться в диалоговом окне при выполнении запроса. В этом запросе можно вводить несколько параметров, при этом они должны иметь уникальные и информативные названия.

Поля

Код товара

Заказано

Продано

Условия

[Введите код товара]

При запуске данного запроса появится окно:

Введите значение параметра

Введите код товара

После ввода данного значения (например, 34) выведется результат выполненного запроса, эквивалентный тому, как если бы мы в бланке запроса для поля Код товара в строке Условия написали 34.

Если ввести несколько параметров (например, по коду товара и коду клиента), то вопросы будут задаваться последовательно в том порядке, в каком находятся поля в бланке запроса.

Параметрическими можно делать: итоговые запросы, запросы на создание таблиц:

Поля

Код товара

Код клиента

Заказано

Групповые операции

Группировка

Группировка

Sum

[Код товара]

[Код клиента]

    1. Лекция 10. Перекрестные запросы

Перекрестными называется итоговый запрос, представленный в виде электронной таблицы.

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

Для этого мы должны сделать запрос (вкладка Запросы/Создать/Конструктор) и изменить тип запроса на перекрестный запрос.

Поле

Код товара

Дата продажи

Продано

Имя таблицы

Заказано

Заказы

Заказы

Гр. Операции

Группировка

Группировка

Sum

Перекрестная таблица

Заголовок строки

Заголовок столбца

Значения

Сортировка

По возрастанию

Условие

В строке Перекрестная таблица можно выбрать одну из четырех установок:

  • заголовки строк

  • заголовки столбцов

  • значение (выводится в ячейках таблицы)

  • не выводить (предназначена для ввода условий отбора)

Результаты выполнения данного запроса будет таблица ниже:

Код товара

3.01.00

5.01.00

2.02.00

4.03.00

10.01.00

124

45

10

15

20

125

96

126

5

15

18

21

Можно в строке Условие поле Дата продажи ввести *.03.*, тогда таблица будет состоять из заголовков строк и двух столбцов (04.03.00 10.03.00).

Пусть нас интересует суммарное значение по каждому месяцу.

Тогда, вместо поля [Дата продажи], в качестве заголовка столбцов необходимо ввести вычисляемое поле.

Format ([Заказы][Дата продажи];”mmm-yyyy”)

Данная функция одновременно определяет

  • формат ввода даты:

mmm – месяц апрель, май, июнь

mmmm – полное название месяца

уу – год 00, 99

уууу – год 1999, 2000

  • уровень группировки.

Например:

  • если в данной функции ввести format ([Дата продажи];”dd-mmmm-yyyy”), то группировка будет выполняться по дням (так же как получилось в первоначальном варианте запроса);

  • если ввести Format ([Дата продажи];”уууу”), то будут суммироваться продажи по каждому товару за год.

В нашем варианте запрос будет иметь вид:

Код товара

Январь- 00

Декабрь - 00

Март – 00

124

45

10

35

125

96

126

20

18

21

Положения строк и столбцов в запросе можно изменять.

Если мы хотим указать, что данный запрос отражает только те заказы, которые выполнены (то есть [Заказано]=[Продано]), то в бланк запроса нужно добавить поле Заказано дважды (для поля, являющегося Значением перекрестной таблицы, Условие отбора задавать нельзя). В повторно добавленном с запрос поле Заказано в строке Перекрестная таблица нужно выбрать режим (не отображаются), так в строке Условие - [Заказано]=[Продано]. Тогда на экран выведутся только те товары, по которым выполняются заказы.