При необходимости выполнения расчетов по горизонтали можно формировать поля с вычислениями в нижней панели окна запросов на выборку в любом пустом поле, там могут формироваться и итоговые поля с использованием групповых функций. Поля, которые вычисляются, создаются тогда, когда в таблицах базы данных нет необходимых данных, или они могут быть определены на основе имеющихся. При формировании полей, которые вычисляются, могут использоваться арифметические выражения и встроенные функции.
Выражения вводятся в пустую ячейку строки Поле свободного столбца бланка запроса. При нажатии на этом поле автоматически формируется имя поля Выражение N, где N – порядковый номер поля, которое рассчитывается.
При конструировании вычисляемых выражений необходимо придерживаться некоторых правил.
Основные из них: имя объекта базы данных (например, имя таблицы) отделяется от имени поля восклицательным знаком; имена берутся в квадратные скобки; данные символьного типа — берутся в кавычки.
Пример, если в результирующую таблицу необходимо включать поле, в котором будет отображаться стоимость заказанного товара, то поле, которое вычисляется, будет иметь следующий вид:
Выражение 1: [Товары]![Цена]*[Объем заказов]![Количество]
где [Товары] – имя таблицы; [Цена] – имя поля.
Имя поля, которое вычисляется, можно заменить, введя в бланк запроса вместо Выражение 1 новое имя (например, Стоимость).
Пример: [Предмет] = Математика And [День] = Вторник
После набора всего выражения нажимается кнопка ОК. Появится окно запроса. Его необходимо закрыть и подтвердить необходимость сохранения структуры.
Пример: [Оклад] <250 And [Стаж] >7
После математических знаков (в данном случае после знаков больше или меньше) не должно быть пробелов, иначе числовые константы будут восприниматься как текстовые.
При формировании вычисляемых полей, а также для сложных вычислений и при использовании данных нескольких таблиц заполнение поля, которое вычисляется, целесообразно выполнять с помощью программы, которую называют Построитель выражений.
Для запуска программы необходимо вызвать контекстное меню строки Условия выбора - команда Построить… или нажать кнопу на панели инструментов. В результате появится окно Построитель выражений, изображенное на рис. 11.
Рисунок 11 – Окно Построителя выражений.
Это окно состоит из четырех частей. Верхнюю часть используют для ввода вычисляемого выражения. Здесь размещены также кнопки управления окном, кнопки со знаками математических и логических операций. Эти знаки переносятся в выражение, которое создается нажатием по ним клавишей мыши.
Три нижних окна используют для выбора элементов, которые в них расположены. Слева расположены объекты базы данных: таблицы, запросы и др., а также функции, константы и операнды, которые могут быть использованы в выражении.
В средней части перечислены элементы выбранного объекта, находящегося слева. Например, если слева выделено имя таблицы-запроса, то в средней части необходимо два раза нажать клавишей мыши на соответствующем имени.
Правую нижнюю часть окна используют для выбора конкретных значений тех объектов, которые указаны в средней части.
Если указанные объекты и значения выбираются из тех, которые показаны в окне, то Access сам придерживается соответствующих правил синтаксиса.
Пример: Выбрать всех преподавателей с датой рождения от 1945 до 1959 гг.
- в бланке запросов, в поле Дата, активизировать контекстное меню ячейки Условия отбора и выполнить команду Построить…;
- в окне Построителя выражений (рис. 12), которое появится, открыть папку Операторы, выбрать операцию Сравнения и ее оператор Between;
- с помощью команды Вставить в область просмотра окна Построитель выражений появиться шаблон вида: Between “Выражение” And “Выражение”;
- в шаблон ввести дату начала периода и дату окончания периода, отделяют дату символы: #...#.
Рисунок 12 – Окно Построителя выражений для условий выбора Даты.
После нажатия ОК выражение передается в бланк запроса и размещается после имени поля. При необходимости это выражение можно редактировать.
Access содержит свыше ста функции (небольших встроенных программ, которые в результате выполнения возвращают значение), выполняющих множество разнообразных задач. Есть функции для манипулирования базами данных, строками, числами в формате даты и времени, математические, деловые и финансовые. Их можно использовать для создания вычисляемых выражений в формах, отчетах и запросах.