Предложение COMPUTE

Оценить
(1 голос)

Предложение compute использует агрегатные функции (min, max, sum, avg и count) для вычисления итоговых значений, которые появляются как дополнительные строки в результате выполнения запроса. Агрегатные функции, используемые в предложении compute, рассматриваются как строки агрегатных функций.

Агрегатные функции обычно применяются к строкам таблицы для вычисления скалярных величин, которые затем появляются в результате выполнения запроса в виде дополнительной строки (см. пример 6.49). Запрос, использующий такую форму агрегатных функций, возвращает строку в качестве результата.

Предложение compute имеет необязательную опцию by, которая определяет форму группирования результата. Если by опущено, строка агрегатной функции применяется ко всем строкам результата запроса. Опция by имя_столбца указывает, что значения столбца имя_столбца используются для создания группы. Предложение order by требуется, если предложение compute применяется вместе с by.

В примере 6.49 показано использование предложения compute вместе с опцией by.

Предложение COMPUTE

Предложение COMPUTE

 

Предложение compute может иметь множество вариантов использования в операторе select. Пример 6.49 может быть записан с помощью одного оператора select и следующих операторов compute:

compute min (enter_date) by project_no compute min(enter_date)

Существует несколько ограничений относительно предложения compute:

♦ не допускается использование select into (потому что результат предложения compute не является таблицей);

♦ все столбцы в предложении compute должны присутствовать в списке выбора select;

♦ имя каждого столбца в предложении compute by должно появиться в предложении order by;

♦ порядок столбцов в предложениях compute by и order by должен быть одинаковым.


Подробнее в этой категории: « Выражения CASE Временные таблицы »
Временные таблицы
Оператор JOIN
Две синтаксические формы для реализации соединений
Естественное соединение
Соединение более чем двух таблиц

Добавить комментарий


Защитный код
Обновить

© 2021 serversql.ru. Все права защищены.