>  기사  >  데이터 베이스  >  오라클에서 그룹화를 사용하는 방법

오라클에서 그룹화를 사용하는 방법

下次还敢
下次还敢원래의
2024-04-30 08:09:151183검색

GROUPING 함수는 그룹화 수준의 중첩을 결정하여 가장 바깥쪽 그룹화에 대해 0을 반환하고 내부 그룹화에 대해 1을 반환합니다. 가장 바깥쪽 그룹화를 식별하고, 집계 함수 결과를 계산하고, 그룹화를 기반으로 조건을 생성하는 데 사용할 수 있습니다.

오라클에서 그룹화를 사용하는 방법

Oracle의 GROUPING 함수

GROUPING 함수는 집계 함수 계산에서 그룹화 수준을 표시하는 데 사용됩니다. 행이 가장 깊게 중첩된 그룹에 속하는지 여부를 나타내는 값을 반환합니다.

Syntax

<code>GROUPING(expr)</code>

여기서:

  • expr은 그룹화 범위를 지정하는 열 또는 표현식입니다.

Usage

GROUPING 기능을 사용하여 다음을 수행할 수 있습니다.

  • 가장 바깥쪽 그룹에서 행을 식별합니다.
  • 집계 함수의 결과는 가장 바깥쪽 그룹에서만 계산됩니다.
  • 그룹화 계층 구조를 기반으로 조건을 만듭니다.

반환 값 ​​

GROUPING 함수는 다음 값을 반환합니다.

  • 0: 행이 가장 깊게 중첩된 그룹에 속하는 경우.
  • 1: 행이 내부 그룹에 속하는 경우.

<code>SELECT department_id, job_id, SUM(salary) AS total_salary,
       GROUPING(job_id) AS group_level
FROM employee
GROUP BY department_id, job_id;</code>

결과:

department_id job_id total_salary group_level
10 20 60000 0
10 30 40000 0
10 40 20000 1
20 50 50000 0
20 60 30000 1

이 예에서 group_level 열은 다음을 나타냅니다.

  • department_id와 job_id는 모두 가장 바깥쪽 그룹에 속합니다(group_level은 0).
  • department_id는 외부 그룹이고 job_id는 내부 그룹입니다(group_level은 1).

위 내용은 오라클에서 그룹화를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.