Запрос с вычисляемым полем создает новое поле, значения которого вычисляются по формулам. Любая формула может содержать имена полей, с которыми производятся расчеты, знаки операций (+, -, *, /) и числовые константы. Имя каждого поля в формуле заключается в квадратные скобки. Допустим, в таблице имеются поля Цена и Количество товара. Формула для расчета стоимости товара имеет вид:
[Цена]*[Количество товара]
Если необходимо выполнить повышение цен на 20%, следует записать
[Цена]*1,2 Значение 1,2 в скобки не заключается, т.к. не является именем поля.
В базе Библиотека создадим запрос для расчета денежной суммы, которая должна быть уплачена в библиотеку в случае потери книги. Допустим, что читатель, потерявший книгу, должен вернуть на 10% больше ее стоимости. Тогда формула для расчета суммы (назовем ее Стоимость возмещения) имеет вид: [Цена]*1,1
Создайте запрос по таблице Книги, выполните двойные щелчки по именам полей Номер книги, Автор, Название и установите курсор в пустую клетку в строке Поле. Затем нажмите комбинацию клавиш Shift-F2. Откроется окно, в котором следует записать формулу Стоимость возмещения: [Цена]*1,1 и нажать ОК.
После выполнения запроса для каждой книги будет вычислено искомое значение.
Так как в библиотеке каждая книга имеется в нескольких экземплярах, можно найти суммарную стоимость каждой книги (цену умножить на количество экземпляров). Цены книг имеются в таблице Книги, а количество экземпляров каждой книги не указано, этот показатель необходимо предварительно вычислить. Для этого создадим запрос с группировкой:
Проверьте результат выполнения запроса, сохраните запрос и назовите его Количество экземпляров.
Теперь по запросу Количество экземпляров создадим запрос с вычисляемым полем:
В результате выполнения запроса будет найдена общая стоимость каждого вида учебников: