본문 바로가기
My Image
반응형

그룹함수3

[SQLD] 제2장 - 그룹함수(CUBE, ROLLUP, GROUPING SETS)_3 GROUPING SETS 함수 지난시간 : 2018/05/17 - [전공지식/DataBase] - [SQLD] 제2장 - 그룹함수(CUBE, ROLLUP, GROUPING SETS)_12018/05/18 - [전공지식/DataBase] - [SQLD] 제2장 - 그룹함수(CUBE, ROLLUP, GROUPING SETS)_2 이번시간은 3번째 시간으로 GROUPING SETS 함수에 대해 알아보겠습니다. GROUPING SETS 를 이용해 더욱 다양한 소계 집합을 만들수 있습니다. GROUP BY SQL를 여러 번 반복하지 않아도 원하는 결과를 쉽게 얻을 수 있습니다. GROUPING SETS 함수는 쉽게 GROUP BY 한 SQL 들을 UNION ALL 해서 보여주는 결과와 같습니다. 먼저 GROUP .. 2018. 5. 20.
[SQLD] 제2장 - 그룹함수(CUBE, ROLLUP, GROUPING SETS)_2 CUBE 함수 지난 시간 : 2018/05/17 - [전공지식/DataBase] - [SQLD] 제2장 - 그룹함수(CUBE, ROLLUP, GROUPING SETS)_1 ROLLUP 에서는 단지 가능한 Subtotal 만을 생성하였지만, CUBE는 결합 가능한 모든 값에 대하여 다차원 집계를 생성합니다.CUBE를 사용할 경우에는 내부적으로는 Grouping Columns의 순서를 바꾸어서 또 한 번의 쿼리를 추가 수행해야 합니다. 뿐만 아니라 Grand Total 은 양쪽의 쿼리에서 모두 생성이 되므로 한 번의 쿼리에서는 제거되어야만 하므로 ROLLUP에 비해 시스템의 연산 대상이 많습니다. 이처럼 모든 경우에 대해서 Subtotal을 생성해야 하는 경우에는 CUBE를 사용하는 것이 바람직합니다. 또한.. 2018. 5. 18.
[SQLD] 제2장 - 그룹함수(CUBE, ROLLUP, GROUPING SETS)_1 그룹 함수(GROUP FUNCTION)의 필요성 결산 개념의 업무를 가지는 원가나 판매 시스템의 경우는 소계, 중계, 합계, 총 합계 등 여러 레벨의 결산 보고서를 만드는 것이 중요 업무 중의 하나입니다. 개발자들이 이런 보고서를 작성하기 위해서는 SQL이 포함된 3GL으로 배치 프로그램을 작성하거나, 레벨별 집계를 위한 여러 단계의 SQL을 UNION, UNION ALL로 묶은 후 하나의 테이블을 여러 번 읽어 다시 재정렬하는 복잡한 단계를 거쳐야만 합니다. 하지만, 그룹 함수(GROUP FUNCTION)을 사용한다면, 하나의 SQL로 테이블을 한 번만 읽어서 빠르게 원하는 리포트를 작성할 수 있습니다. 또한, GROUPING 함수와 CASE 함수를 이용하면 쉽게 원하는 포맷의 보고서 작성도 가능합니다.. 2018. 5. 17.
반응형