집 >데이터 베이스 >MySQL 튜토리얼 >보다 쉬운 분석을 위해 Oracle SQL에서 월별 평면 데이터를 어떻게 피벗할 수 있습니까?
월별로 정리된 숫자 데이터가 포함된 테이블이 있다고 가정해 보겠습니다.
<code>MONTH | VALUE -------|------ 1 | 100 2 | 200 3 | 300 ...</code>
목표는 월별 값을 더 시각적으로 볼 수 있도록 이 데이터를 피벗 형식으로 변환하는 것입니다.
<code>MONTH_JAN | MONTH_FEB | MONTH_MAR | ... ---------|---------|---------| 100 | 200 | 300 | ...</code>
Oracle 11g 이상에는 데이터를 쉽게 피벗할 수 있는 PIVOT 연산자가 도입되었습니다. 구문은 다음과 같습니다.
<code>SELECT * FROM table_name PIVOT ( aggregate_function(column_name) FOR (pivot_column) IN (list_of_values) );</code>
다음 예제 데이터를 고려하세요.
<code>CREATE TABLE tq84_pivot ( month NUMBER, value NUMBER ); INSERT INTO tq84_pivot VALUES (1, 100), (2, 200), (3, 300), (4, 400), (5, 500), (6, 600); SELECT * FROM tq84_pivot PIVOT ( SUM(value) AS sum_value FOR (month) IN (1 AS month_jan, 2 AS month_feb, 3 AS month_mar, 4 AS month_apr, 5 AS month_mai, 6 AS month_jun, 7 AS month_jul, 8 AS month_aug, 9 AS month_sep, 10 AS month_oct, 11 AS month_nov, 12 AS month_dec) );</code>
결과는 예상대로입니다:
<code>MONTH_JAN | MONTH_FEB | MONTH_MAR | ... ---------|---------|---------| 100 | 200 | 300 | ...</code>
위 내용은 보다 쉬운 분석을 위해 Oracle SQL에서 월별 평면 데이터를 어떻게 피벗할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!