Создание связей. Запросы: Методические указания к выполнению лабораторной работы № 5, страница 2

Задача №2: Выдать список сотрудников и их детей, возраст которых меньше 14 лет.

Это можно сделать путем уточнения предыдущего запроса с помощью Конструктора запросов.

Порядок работы:

Ø На вкладке Запросы выделить запрос Личная_Дети и щелкните кнопку Конструктор. Появится диалоговое окно (рис.6), в котором в верхней части показаны используемые в запросе таблицы и их связи, а внизу – в бланке запроса – отображены заданные условия выборки (просто перечень полей).

Рис.6

Ø В строке Условие отбора в поле ДатаРождРеб щелкните правой кнопкой и выберите Построить для перехода в построитель выражения (рис.7).

 

Рис.7

Ø В диалоговом окне Построитель выражений в верхнем поле формируется выражение, определяющее условие отбора.

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

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

Левый список содержит дерево объектов. Знак + на объекте означает, что объект можно открыть двойным щелчком мыши для выбора подобъекта.

Средний список раскрывает содержимое выбранного подобъекта.

Если выбранный слева объект Таблицы или Запроса, затем – конкретная таблица или запрос, то в среднем списке отображается перечень полей конкретной таблицы или запроса. После выбора поля обращение к полю можно передать в выражение кнопкой  Вставить.

  Если слева выбран объект ФУНКЦИИ, затем ВСТРОЕННЫЕ ФУНКЦИИ, то в среднем списке отображается перечень категорий функций. После выбора категорий следует перейти в правый список для выбора конкретной функции.

Если слева выбраны Операторы, то в среднем списке отображаются группы операторов (математические, логические, сравнения). После выбора группы следует перейти в правый список для выбора конкретного оператора.

Правый список показывает перечень конкретных функций, констант или операторов. Кнопка Вставить передает обращение к выбранному объекту в выражение.

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

Выражение в верхнем поле можно редактировать как обычную текстовую строку, однако, не нарушая правил записи (синтаксиса) элементов в выражении, которые задает MSACCESS.

Правила записи элементов в выражении:

1.  Имена таблиц, запросов и полей заключаются в квадратные скобки.

2.  Имя таблицы (или запроса) и поля соединяются восклицательным знаком.

3.  Константы типа Даты заключаются в символы #.

4.  Текстовые константы заключаются в двойные кавычки («…»).

В нашем случае надо создать выражение, вычисляющее разницу между текущим годом и годом рождения ребенка, которая должна быть меньше 14. В таком выражении потребуется использовать стандартные функции типа ДАТА/ВРЕМЯ: Year() (год) и Date() (текущая системная дата). Функция Year() определяет год от аргумента, записанного в скобках. Если в качестве аргумента использовать функцию Date(), то в результате будет выдан текущий год. Если в качестве аргумента использовать поле ДатаРождРеб из таблицы ДЕТИ, то в результате будет выдан год рождения ребенка.

Результат нашего выражения должен иметь вид:

Year(Date())-Year([ДЕТИ]![ДатаРождРеб])<14

Кнопка ОК завершает построение выражения и возвращает его в окно конструктора запроса.

Ø В бланке запроса для поля ФИО в строке Сортировка выберите По возрастанию.

Ø Сохраните запрос Файл ® Сохранить как. Система спросит, с каким именем сохранить запрос. Задайте имя Дети_до_14 (рис.8)

 

Рис.8

Ø Щелкните кнопку ЗАПУСК   на панели инструментов для просмотра результатов запроса.