Переименование поля в запросе

Устали от длинных имен полей в окне результатов ваших запросов? Используя толькочто полученные знания, касающиеся выражений, можно безболезненно переименовать поле в окне результатов вашего запроса. Все что вам требуется — это вычисляемое поле. Хитрость заключается в создании (с помощью выражения) вычисляемого поля, совпа­дающего с одним из существующих полей и присвоении ему нового имени. Технически в этом поле не выполняются никакие вычисления, но оно все равно корректно действу­ет. Далее приведен пример вычисляемого поля, которое переименовывает DateCustomerPlacedPurchaseOrderв Date:Date: DateCustomerPlacedPurchaseOrder Новое имя (в данном примере Date)называют псевдонимом (alias).

Используя этот прием, помните о том, что исходное иоле (в данном случае DateCustomerPlacedPurchaseOrder)не надо включать в ваш запрос. Нужная вам информация отображается в вычисляемом поле (Date).

 

Простая математическая обработка числовых полей

Многие вычисляемые поля полагаются на обычные арифметические операции. В табл. 7.1 представлен краткий обзор основных вариантов комбинирования чисел.

Таблица 7.1. Арифметические операции

Операция Название Пример Результат
+ Сложение 1+1
- Вычитание 1-1
  Умножение 2*2
  Возведение в степень 2^3
/ Деление 5/2 2.5
\ Деление нацело (возвращает наименьшее целое число и отбрасывает остаток) 5\2
Mod Остаток от деления (возвращает остаток, полученный в результате деления нацело) 5Mod 2

 

Для создания выражения можно использовать произвольное количество полей и опера­ций. Рассмотрим таблицу Productsс полем QuantityInStock(количество на складе), в ко­тором записано количество единиц товара, находящихся в вашем хранилище. Для определения


стоимости данного товара, имеющегося у вас под рукой, введите следующее выраже­ние, применяющее два поля:

ValueInStock: [UnitsInStock] * [Price]

 

 

Подсказка

При выполнении математической операции над полем может произойти сбой, если в поле про­пущено значение. Для устранения этой проблемы вам необходима функция Nz ( ), описанная в разд. "Обработка пропущенных или неопределенных значений" далее в этой главе.

 

Поля с датами

Операции сложения и вычитания можно применять к полям, содержащим даты. (Можно применять и умножение, деление и все что угодно, но реального смысла такие значения иметь не будут.)

Применяя операцию сложения, вы можете добавить обычное число к полю с датой. Это число сдвигает дату вперед на указанное число дней. Далее приведен пример, добавляющий дополнительные две недели к сроку платежа, установленному компанией:

ExtendedDeadline: [DueDate] + 14

Если это выражение применить к дате 10 января 2007 г., новая дата будет.24 января 2007 г.

Используя операцию вычитания, можно найти число дней между двумя датами. Далее показано, как вычисляется период между временем помещения заказа и временем доставки: ShippingLag: [ShipDate] - [OrderDate]

Если доставка произошла через 12 дней после того, как сделан заказ, вы увидите значе­ние 12.

 

Примечание

Поля типа Дата/времявключают информацию о времени суток. В вычислениях данные о вре­мени представляются как дробная часть числа. Если вы вычли одну дату из другой и получили число 12.25, оно представляет период 12 дней и 6 часов (поскольку 6 часов равно 25% суток).

 

 

Помните, что если вы хотите включить фиксированные даты в ваши запросы, их необхо­димо обрамлять символами # и использовать формат Месяц/День/Год (Month/Day/Year). Далее приведен пример, использующий такой подход для вычисления количества дней ме­жду датой своевременного предоставления задания (20 марта 2007 г.) и датой действитель­ного его предоставления: LateDays: [DateSubmitted] - #03/20/07#

Положительное значение указывает на то, что значение в поле DateSubmittedбольше (более поздняя дата), чем предельный срок сдачи — другими словами, студент опоздал. Зна­чение 4 указывает, что студент на 4 дня задержался, в то время как -4 означает, что студент сдал работу на четыре дня раньше назначенного в расписании срока.