Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания к ЛАБ_1.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
17.59 Mб
Скачать

10. Пояснения к выполнению Запросов задания.

1) Запрос 1: выбрать информацию при следующих условиях:

  • книги московских издательств

  • по разделам “Техника и технология”, “Компьютерная литература”;

  • тираж издания от 5 до 30 тыс. экз.;

  • объем издания не менее 5 прив.печ.л.;

  • тип переплета “обл”.

Поля Запроса 1 : Книги, Раздел, Издательство, Переплёт, Тираж, Прив_объём.

Используются все пять Таблиц базы данных.

Поле “Прив_объём” является вычисляемым и создаётся с помощью Построителя на основе поля “Кол-во стр” Таблицы “Книги” и поля “Коэф_прив” Таблицы “Форматы”.

Алгоритм создания Запроса 1.

Создать запрос в режиме Конструктора: Создание – Конструктор запросов – Добавить необходимые Таблицы в поле Конструктора запроса.

Рис.19. Создание Запроса в режиме Конструктора: выбор необходимых Таблиц

Ввести необходимые поля, как описано в п. 9.5:

  • поле Книги из Таблицы Книги

  • поле Раздел из Таблицы Разделы

  • поле Издательство из Таблицы Издательства

  • поле Переплёт из Таблицы Переплёты

  • поле Тираж из Таблицы Книги

Ввести вычисляемое поле Прив_объём с помощью Построителя (п.Использование Построителя для создания вычисляемого поля на примере вычисления приведённого объёма):

Использование Построителя для создания вычисляемого поля на примере вычисления приведённого объёма

  1. В строке “Поле” Таблицы конструктора в пустом столбце нажать сначала левой кнопкой мыши, затем – правой и в открывшемся меню выбрать “Построить” (Рис. 20);

  2. Построить требуемое выражение для вычисления заданного поля:

Правой кнопкой по полю Таблицы построителя – Построитель (выбрать двойным щелчком мыши Таблицы - Книги – двойным щелчком поле “Ко-во стр” - Знак умножить “*” - Таблица “Формат” - Поле “Коэф приведения”) – см. Рис.21, 22.

  1. Перед полученным выражением Ввести название нового поля “Прив_объём” и после него поставить двоеточие “:” (Рис.22).

Рис.20. Вызов Построителя для создания вычисляемого поля.

Рис.21. Выбор Таблицы и поля для создания вычисляемого поля

Рис.22. Ввод названия вычисляемого поля.

С целью выделения целой части приведённого объёма применить функцию INT() к уже введённому выражению (Рис.23).

Рис.23.Использовании функции INT() при создании вычисляемого поля.

В строку “Условия отбора” Таблицы конструктора Запроса Занести условия выбора информации

В соответствии с заданием 10.1) – см.Рис. 24, 25:

  • В столбец “Издательство”: Like “М.:*” (Здесь буква “М” – русская!)

  • В столбец “Раздел”: Like “Техн*” OR Like “Комп*”

  • В столбец “Переплёт”: Like “обл.*”

  • В столбец “Тираж”: Between 5 And 30

  • В столбец “Прив_объём” занести: >=5

Замечание: Запускать Запрос на выполнение после ввода каждого условия для своевременного обнаружения ошибок.

Рис.24. Вид Запроса 1 в режиме Конструктора

Рис.25. Вид Запроса 1 в режиме Таблицы

2) Запрос 2 (с параметрами). Использовать в качестве основы предыдущий запрос (Скопировать “Запрос 1” в “Запрос с параметрами ” – Рис.26, 27).

Рис.26. Копирование Запроса.

Рис.27. Присвоение названия Запросу.

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

В Строке “Условия отбора” заменить точные верхнюю и нижнюю границы значения Тиража переменными, взятыми в квадратные скобки. В примере выбраны переменные [Tmin], [Tmax]): Between [TMin] And [TMax] (Рис. 28).

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

При запуске Запроса с параметрами программа потребует ввести значения переменных Tmin и Tmax.. В примере введены Tmin=2 и Tmax=4 (Рис.29, 30).

Рис.29. Ввод значений параметра Tmin при запуске Запроса.

Рис.30. Ввод значений параметра Tmax при запуске Запроса.

Рис.31. Результат запуска Запроса с параметрами

Как видим, выбраны книги со значениями Тиража, лежащими в заданном диапазоне.

3) Запрос 3. Анализ распределения книг в натуральном и стоимостном выражении по разделам (Используются Таблицы “Книги” и “Разделы”).

Поля: Код раздела, Раздел, Количество книг по разделам, Средняя цена по разделам, Суммарный тираж по разделам, Общая стоимость книг по разделам (определяется выражением Цена*Тираж; округлить до целых с помощью функции INT()).

Создать Запрос в режиме Конструктора. В поле запроса поместить Таблицы: Книги, Разделы.

В Таблицу Конструктора поместить поля Код раздела (из Таблицы Разделы), Раздел (из Таблицы Разделы).

Для получения итоговых показателей по разделам в Таблицу Конструктора запросов добавить строку “Групповая операция” (правой кнопкой по таблице Конструктора запросов – строка “Итоги” со значком “∑”) – см.Рис.32.

Рис.32. Добавление строки Групповая опреация.

Покажем 2 способа получения итоговых показателей на примере вычисления количества книг по разделам.

Способ 1. Использование групповой операции Count в строке Групповая операция. В строке “Поле” может стоять любое поле Таблицы, так как нет разницы, по какому полю считать число строк в Таблице. Но принято использовать числовое поле (“Код книги”). Поэтому добавляем в Таблицу Конструктора запроса поле “Код книги” Таблицы “Книги” двойным щелчком по нему.

Правой кнопкой мыши по ячейке на пересечении строки Групповая операция и столбца Код книги открываем меню и выбираем тип групповой операции “Count” (Рис.33).

Недостатком использования функций непосредственно в строке “Групповая операций” является невозможность округления поля, к которому применяется групповая операция.

Рис.33. Выбор типа групповой операции в Таблице Конструктора Запроса.

Способ 2. Использование встроенной функции (Count () - в данном примере), которую можно выбрать с помощью Построителя (Рис.34 ). Аргументом функции выбрать поле Код книги Таблицы Книги (Таблицы – Книги – Код книги двойным щелчком), как описано в п. 10.1 (Использование Построителя для создания вычисляемого поля на примере вычисления приведённого объёма).

В нашем примере в качестве названия получаемого поля выбрано “Число книг”.

Таким образом, в Построителе выражений будет стоять (Рис.35):

Число книг: Count([Книги]![Код книги]).

В строке Групповая операция Таблицы Конструктора запроса выбрать “Выражение”, так как итоговый показатель получается с помощью Вычисляемого поля.

Рис.34.Формирование поля “Число книг” с помощью Построителя.

Рис.35. Использование групповой операции “Выражение” для формирования вычисляемого поля “Число книг”.

Аналогично построим выражения для вычисления следующих итоговых показателей:

Стоимость книг по разделу (Рис.36);

Рис.36. Вычисление поля “Стоимость книг по разделу” с помощью Построителя.

Средняя цена (Рис.37) – получается с помощью функции AVG() и INT();

Поле “Сум_Тираж” - для вычисления общего тираж с помощью Построителя и функции Sum().

Рис.37. Вычисление поля “Средняя цена издания по разделу” с помощью Построителя.

Результаты Запроса 3 представлены на Рис.38, 39.

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

Рис.39. Запрос 3 в Режиме Таблицы

4) Запрос 4. Анализ распределения книг в натуральном и стоимостном выражении по типу переплета (Используются Таблицы “Разделы”, “Книги” и “Переплёты”) для раздела “Образование и наука”.

  1. Раздел

  2. Код переплёта

  3. Тип переплёта

  4. Кол-во книг

  5. Средняя цена

  6. Средний тираж

  7. Суммарный тираж

  8. Общая стоимость книг (округлить до десятых с помощью встроенной функции Round)

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

Рис.41. Запрос 3 в Режиме Таблицы

5) запрос 5. Анализ распределения книг в натуральном и стоимостном выражении по форматам только для книг Разделов 4, 5 совместно (одному формату соответствует только 1 строка итоговой таблицы) – Рис.42,43.

  1. Код формата

  2. Название формата

  3. Кол-во книг

  4. Средняя цена

  5. Суммарный тираж

  6. Общая стоимость книг

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

Рис.43. Запрос 5 в Режиме Таблицы

6) запрос 6. Анализ распределения книг в натуральном и стоимостном выражении по форматам только для книг Разделов 4, 5 раздельно (каждому из разделов может соответствовать весь набор форматов). Поля: Код раздела, Код формата, Название формата, Кол-во книг, Средняя цена, Суммарный тираж, Общая стоимость книг.

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

Рис.45. Запрос 6 в Режиме Таблицы

7) Запрос 7 “Итоги”. Анализ распределения книг в натуральном и стоимостном выражении по издательствам (Поля: Код издательства, Название издательства, Количество изданий, Средняя цена, Общий тираж, Средний тираж, Средний прив. Объём, Общий приведенный объем в листах оттисках, Общая стоимость).

Исходные Таблицы: Издательства, Форматы, Книги.

8) Запрос 8. Выбрать ведущие издательства, т.е. такие, у которых число изданий не меньше 10. Назвать запрос “Ведущие издательства”. Поля: Код изд-ва, Изд-во, Кол-во книг.

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

Рис.47. Запрос ”Ведущие издательства” в режиме Таблицы