Оформление Отчета пробелами и итоговыми строками

Когда вы используете фразу ORDER BY в команде SQL SELECT, записи с одинаковыми значениями в сортируемой колонке выводятся вместе. Можно улучшить данный вывод, используя команды SQL*PLUS BREAK и COMPUTE, для того, чтобы создать подмножество записей и добавить пустые и/или итоговые строки после каждого подмножества записей.

Чтобы подавить вывод на экран дублируемых значений в столбце, используется команда:

BREAK ON колонка_прерывания

Пример 3:

BREAK ON DEPTNO

SELECT deptno, ename, sal

FROM emp

WHERE sal < 2500

ORDER BY DEPTNO;

Можно вставлять пустые строки или начинать новую страницу каждый раз, когда изменяется значение колонки прерывания. Чтобы вставить n пустых строк, необходимо использовать команду BREAK в следующей форме:

BREAK ON колонка_прерывания SKIP n

Чтобы начать новую страницу, команда вводится следующим образом:

BREAK ON колонка_прерывания SKIP PAGE

Введя команду CLEAR с параметром BREAKS, можно удалить текущие определения колонок прерываний:

CLEAR BREAKS

Можно помещать команду CLEAR BREAKS в начало командного файла, чтобы предотвратить влияние на выполнение запросов предыдущих команд BREAK.

Вычисление итоговых строк при изменении значения колонки.

Можно производить различные вычисления над записями каждого подмножества. Эти вычисления производятся функциями SQL*PLUS команды COMPUTE. Для этого необходимо использовать команды BREAK и COMPUTE вместе в следующей форме:

BREAK ON колонка_прерывания

COMPUTE функция OF колонка колонка... ON

Колонка_прерывания

Можно включать несколько колонок прерывания и соответствующих действий, таких как пропуск строк, в команду BREAK, также аналогичный список может быть во фразе ON команды COMPUTE. Чтобы включить множественную колонку прерывания и соответствующие действия в BREAK вместе с командой COMPUTE, используются эти команды в следующем формате:

BREAK ON колонка_прерыв1 SKIP PAGE ON

Колонка_прерыв2 SKIP 2

COMPUTE функция OF колонка колонка... ON


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: