Пример GROUPING

В приведенном на рисунке примере рассмотрим итоговое значение 4400 в первой строке (помечена как 1). Это итоговое значение представляет собой суммарный оклад для должности AD_ASST в подразделении 10. Для расчета этого итогового значения учитывались столбцы как DEPARTMENT_ID, так и JOB_ID. Следовательно, для обоих выражений примера, GROUPING(department_id) и GROUPING(job_id), возвращается значение 0.

12-12-7499363

Пример функции GROUPING

Рассмотрим итоговое значение 4400 во второй строке (помечена как 2). Это значение является суммарным окладом для подразделения 10 и было рассчитано с учетом столбца DEPARTMENT_ID. Следовательно, вызов GROUPING(department_id) возвращает значение 0. Так как при расчете этого значения столбец JOB_ID не учитывался, для GROUPING(job_id) возвращается значение 1. Аналогичный результат можно видеть в пятой строке.

В последней строке рассмотрим итоговое значение 54800 (помечена как 3). Это суммар-ный оклад для тех подразделений, идентификатор которых меньше 50, и для всех должностей. Для расчета этого итогового значения не учитывались ни столбец DEPARTMENT_ID, ни столбец JOB_ID. Следовательно, для обоих выражений, GROUPING(department_id) и GROUPING(job_id), возвращается значение 1.

Далее: Обзор ограничения данных

Related Posts