Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Базы данных ( 2012).doc
Скачиваний:
6
Добавлен:
25.11.2019
Размер:
1.98 Mб
Скачать
  1. Быстрый подсчет

Реализуется с использованием в полях запросов так называемых агрегатных функций (Sum(), Count() и т.д.), в качестве аргумента которых используется набор значений какого-либо поля базы данных.

  1. Выполните команду на создание запроса в режиме конструктора.

  2. В качестве источника данных для запроса в диалоговом окне «Добавление таблицы» укажите таблицу «Каргоплан».

  3. В ячейке первой строки и первой колонки таблицы бланка запроса введите значение «Count(*)». Выполните запрос.

В результате выполнения запроса мы получили динамический набор данных в виде таблицы, состоящей из одной строки и одной колонки с названием «Выражение 1». В единственной ячейке этой таблицы указано количество записей в исходной таблице (функция Count() – возвращает количество записей).

  1. Откройте запрос в режиме конструктора. Замените текст «Выражение 1:» в первой строке бланка запроса на «Количество контейнеров:». Выполните запрос, посмотрите как изменился внешний вид динамического набора, если требуется, увеличьте ширину единственной колонки.

  2. Откройте запрос в режиме конструктора. Добавьте в бланк запроса поле «К выгрузке». Снимите «галочку» в строке «Вывод на экран», в строку «Условие отбора» запишите «BRE». Выполните запрос. В результате выполнения запроса на экране в таблице, состоящей из одной ячейки, должно быть выведено количество контейнеров, которые должны быть выгружены в порту Бремен.

.

  1. Закройте запрос. Сохраните запрос под названием «Количество записей»

ВНИМАНИЕ!

  1. Кроме функции Count() подобным образом могут быть использованы и другие так называемые агрегатные функции, такие как сумма значений - Sum(),среднее значение - Avg(), максимальное значение - Max(), минимальное значение - Min()

  2. В качестве аргумента агрегатной функций Count() может быть использовано имя любого поля таблицы (запроса) либо символ *, обозначающий любое поле

  3. В качестве аргумента всех оставшихся агрегатных функций должно указываться имя поля таблицы (запроса) по которому будут производиться вычисления

  4. В запросе, содержащем агрегатные функции, на экран могут выводиться только результаты вычисления этих функций, поэтому если в бланке запроса имеются другие поля, то для этих полей должна быть снята отметка в строке «Вывод на экран» (Рисунок 8).

Рисунок 8

  1. Контрольное задание

Создайте запросы «Груз_1» и «Груз _2» для того, чтобы определить количество и вес контейнеров:

  1. погруженных в Санкт-Петербурге и Хельсинки назначением на порт Роттердам;

  2. с опасным грузом (кодом 1 или 8), назначением на порт Роттердам, расположенных в трюме № 2.

  1. Вычисления с группировкой значений

ВНИМАНИЕ! Групповые операции используются в том случае, когда требуется разделить все записи таблицы на группы по значению какого-либо поля и рассчитать значение агрегатных функций для каждой группы записей

    1. Использование мастера запросов для создания простых запросов с группированием данных

Иногда возникает потребность получить информацию, которая основана на группировке данных по каким-либо признакам. Например, получить суммарный вес контейнеров по каждому трюму или количество контейнеров предназначенных к выгрузке в каком-либо порту. MS Access позволяет сформировать такой запрос не прибегая к программированию.

  1. В окне базы данных выберите закладку «Запросы», на этой закладке выполните команду «Создание запроса с помощью мастера». На экран будет выведено окно «Создание простых запросов»

  2. Выберите таблицу «Каргоплан» как источник данных для запроса, при помощи кнопки «>», отметьте поля «Трюм» и «Вес» для участия в создаваемом запросе. Нажмите кнопку «Далее»

  3. Укажите, что запрос должен выводить итоговые записи. Нажмите кнопку «Итоги» и поставьте галочки в полях Sum (в строке «Вес») и «Подсчет числа записей». Нажмите кнопку «ОК» и затем «Далее»

  4. Задайте имя запроса («Итоговые данные»), нажмите кнопку «Готово». На экран в форме таблицы будет выведен динамический набор данных, соответствующих сформированному запросу (Рисунок 8):

Рисунок 8

В результате выполнения запроса мы видим суммарный вес контейнеров и их количество в каждом трюме судна.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]