Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Субд_Учебное_пособие (Бойченко, Туманова).doc
Скачиваний:
203
Добавлен:
02.03.2016
Размер:
8 Мб
Скачать
☆

Изменение порядка следования параметров

При открытии запроса, составленного в предыдущем примере, Access сперва запросит город, а затем даты, так как в списке полей запроса параметры задавались именно в такой последовательности. Однако есть целых два способа изменить порядок, в котором запрашиваются параметры. Во-первых, изменить порядок размещения полей в списке полей запроса перетаскиванием их на новое место. Но в этом случае изменится и порядок их размещения в выборке. Если выборку вам трогать не хочется, то воспользуйтесь вторым способом (окном Параметры запроса (Parameters)).

Для вывода на экран приведенного ниже окна выберите в меню Запрос (Query) команду Параметры (Parameters):

Рис. 5.8. Параметры запроса

Введите параметры в том порядке, в котором вы хотите, чтобы они появились. Здесь текст подсказки вводится без квадратных скобок. Для каждого параметра раскройте список Тип данных (Data Type) и выберите тот же тип, что и у поля. Затем щелкните на кнопке OK. При открытии запроса параметры будут запрашиваться в соответствии с их положениями в списке.

Вычисление значений по полям

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

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

Рис.5.9. Запрос для подсчета стоимости

Чтобы произвести вычисления, в строке Поле (Field) вводится выражение (математическое). В нашем примере в первом пустом столбце введите следующее: Сумма:[Сведения Заказов]![Количество1]*[Цена]. «Сумма» – это название будущего столбца; за ней следует двоеточие. Если не указать заголовка, то Access создаст его сам, причем весьма бессмысленный. Имена полей вводятся в том виде, как они указаны в таблице, только заключенные в квадратные скобки, а для вычислений используются математические операторы.

Если какое-то поле встречается только в одной таблице, то ее имя указывать необязательно. Однако в нашем случае две используемые таблицы содержат поле Количество1. Если бы в выражении использовались только имена полей, то Access выдал бы сообщение о неоднозначной ссылке на поле. Мы не хотим огорчать Access, поэтому указываем имя таблицы, заключенное в квадратные скобки, восклицательный знак, затем имя поля: [Сведения Заказов]![Количество1]. Это гарантирует, что в поисках поля Количество1 программа обратится к таблице Сведения Заказов, а не к таблице Склад.

Выполните запрос и посмотрите на вычисленное значение. (При добавлении нового поля Access автоматически устанавливает флажок.)