При создании таких запросов к верхней части окна конструктора запросов выбираем несколько таблиц. Если связи между таблицами были созданы в окне Схема данных, то в этом окне они появятся автоматически. Теперь можно выбирать в один запрос поля из нескольких таблиц. Существует два разных типа объединения двух таблиц – внутреннее и внешнее. Если объединение внутреннее (именно его вы установили), то в один запрос будут объединены записи, в которых совпадают значения в полях связи. Если какая-нибудь запись в одной таблице не имеет соответствующей записи в другой таблице, то эта запись не будет включена в запрос. Внешнее объединение будет рассмотрено позднее.
Создадим поля, которые вычисляются, так как в таблицах баз данных (в отличие от электронных таблиц) никогда не сохраняют данные, которые могут быть вычислены по данным из таблиц. В большинстве случаев потому, что это требует значительных затрат памяти и замедляет поиск необходимых данных и обработку данных в таблицах. Все необходимые вычисления выполняют в запросах, создавая поля, которые вычисляются. Для создания таких полей в свободном столбце конструктора запросов записывают новое имя поля, знак двоеточия :, а потом выражение, которое использует имена других полей и вычисляет необходимое значение.
Например, вычислим пеню, если есть поля Количество дней задержки и Стоимость. В новом столбце запишем:
Пеня: [Количество дней задержки]*[Стоимость]*0,01
Имена полей записываются в квадратных скобках.
При записи выражений можно использовать встроенные функции Access. Имена этих функций, в отличие от Excel, не переведены на русский, они пишутся по-английски, но по смыслу многие из них совпадают с функциями Excel. Приведем несколько функций:
IIf(условие; выражение1; выражение2) – вычисляет выражение1, если условие выполняется, и выражение2, если условие не выполняется (совпадает с функцией ЕСЛИ в Excel).
DateDiff(“d”; дата1; дата2) – вычисляет разность между двумя датами в днях. Если первый аргумент “m” – разность дат вычисляется в месяцах, если “y” – в годах.
Полный список всех функций вы найдете в окне Построитель выражений.