Вычисляемые поля запроса
Visual FoxPro позволяет не только включать в результирующую таблицу запроса информацию из исходных таблиц, но и производить вычисления над ними, предоставляя, таким образом, возможность получить данные, отсутствующие в исходной таблице. Например, из базы данных, предназначенной для учета междугородных разговоров, вы можете выбрать поля таблиц с продолжительностью разговора и стоимостью одной минуты. На основании этой информации можно получить в запросе сведения о стоимости разговоров.
Кроме того, вы можете использовать вычисляемые поля для объединения нескольких полей исходной таблицы в одно результирующее поле. Например, таблица customer содержит фамилию, имя и отчество клиента. В результирующий запрос вы можете поместить одно поле, в котором будет размещена фамилия и инициалы клиента.
Для формирования выражения предназначено поле Functions and expressions (Функции и выражения) вкладки Fields (Поля). Нажмите расположенную справа от поля кнопку вызова построителя выражения и в диалоговом окне Expression Builder (Построитель выражения) создайте выражение для вычисляемого поля. После того как выражение в поле Functions and expressions (Функции и выражения) сформировано, нажатием кнопки Add (Добавить) перенесите его в список Selected fields (Выбранные поля).
Замечание
В окне Expression Builder (Построитель выражения) при создании выражения вы можете использовать поля исходных таблиц, константы, функции. Используя круглые скобки, можно изменить порядок вычисления или сгруппировать данные.
Используя данные из таблицы customer, создадим запрос, результирующая таблица которого будет содержать название предприятия и полный адрес клиента с учетом города. Для этого выполните следующие действия:
ALLTRIM(cCity)+ ", " +ALLTRIM(cAddress)
Рис. 9.4. Определение вычисляемого поля
Рис. 9.5. Результат выборки