Вычисляемые поля в запросах
При создании запроса можно добавить в бланк вычисляемые поля. Это временные поля, в которые заносятся результаты вычислений над значениями других полей.
Например, у вас есть таблица с полями: Начало больничного, Конец больничного, необходимо вычислить количество дней пропуска по больничному лист без учета выходных. Для вычисления можно использовать арифметическое выражение [Конец больничного] -[Начало больничного]+1.
В Access при вычислениях используются поля числовых типов, текстовых, логических и типа даты/время
При записи всех типов выражений имена таблиц и имена полей нужно:
- заключать в квадратные скобки ([ ]), разделяя их точкой (.) или восклицательным знаком(!). Имена таблиц можно не указывать, если в выражении используются имена полей одной таблицы или текущего запроса;
- при записи выражений можно использовать знаки арифметических операций, операции &, логические операции.
Для создания вычисляемого поля необходимо:
- установить курсор в строку Поле свободного столбца;
- на панели инструментов нажать кнопку Построить , открыв окно построителя выражений;
- ввести имя создаваемого поля, обязательно завершив его двоеточием(:), и выражение. Если имя нового поля не ведено, Access выражению присвоит имя по умолчанию: Выражение1.
Рассмотрим примеры вычислимых полей различных типов.
Выражения числового типа. Полный возраст можно вычислить следующим образом:
Возраст: (Date()-[Дата рождения]) / 365.
Выражения текстового типа. Для создания полного адреса в одном поле создадим выражение:
Адрес: [Индекс] & ”,г.” & [Город] & ”,” & ”ул.” & [Улица] & ”,” & [Дом].
Для формирования фамилии с инициалами используется выражение:
ФИО: [Фамилия] & ” ” & Left([Имя],1) & ”. ”& Left([Отчество],1) & ”.”.
Здесь используется функция Left(Поле,n), которая позволяет выделит из текстового Поляn левых букв.