Иллюстрированный самоучитель по Visual FoxPro 7

Вычисляемые поля запроса

Visual FoxPro позволяет включать в результирующую таблицу запроса не только информацию из исходных таблиц, но и производить вычисления над ними, позволяя, таким образом, получить данные, отсутствующие в исходной таблице. Например, из базы данных, предназначенной для учета междугородних разговоров, вы можете выбрать поля таблиц с продолжительностью разговора и стоимостью одной минуты. На основании этой информации вы можете получить в запросе сведения о стоимости разговоров.

Кроме того, вы можете использовать вычисляемые поля для объединения нескольких полей исходной таблицы в одно результирующее поле. Например, таблица customer содержит фамилию, имя и отчество клиента. В результирующий запрос вы можете поместить одно поле, в котором будет размещена фамилия и инициалы клиента.

Для формирования выражения предназначено поле Functions and expressions (Функции и выражения) вкладки Fields (Поля). Нажмите расположенную справа от поля кнопку вызова построителя выражения и в диалоговом окне Expression Builder (Построитель выражения) создайте выражение для вычисляемого поля. После того как выражение в поле Functions and expressions (Функции и выражения) сформировано, нажатием кнопки Add (Добавить) перенесите его в список Selected fields (Выбранные поля).

Замечание
В окне Expression Builder (Построитель выражения) при создании выражения вы можете использовать поля исходных таблиц, константы, функции. Используя круглые скобки, вы можете изменить порядок вычисления или сгруппировать данные
.

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

  1. Откройте окно запроса для таблицы customer.
  2. На вкладке Fields (Поля) перенесите в список Selected fields (Выбранные поля) поле ccompany, содержащее наименование предприятия.
  3. Для объединения города и адреса клиента нажмите кнопку вызова построителя выражения поля Functions and expressions (Функции и выражения) и в диалоговом окне Expression Builder (Построитель выражений) создайте следующее выражение:
    ALL/TRIM (Ccity) + ", " +ALLTRIM(Caddress)
    
  4. Закройте окно построителя выражения, нажав кнопку ОК.
  5. Для размещения созданного выражения в списке Selected fields (Выбранные поля) нажмите кнопку Add (Добавить).
  6. На этом формирование запроса завершено (рис. 9.4). Нажмите кнопку Run (Выполнить) на стандартной панели инструментов, и на экране появится результирующая таблица (рис. 9.5).

Иллюстрированный самоучитель по Visual FoxPro 7 › Запросы к базе данных › Вычисляемые поля запроса
Рис. 9.4. Определение вычисляемого поля

Иллюстрированный самоучитель по Visual FoxPro 7 › Запросы к базе данных › Вычисляемые поля запроса
Рис. 9.5. Результат выборки

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.