목록분류 전체보기 (73)
으나님의 잡다한 개발상식

1) 비율 관련 윈도우 함수 - CUME_DIST : 파티션 전체 건수에서 현재 행보다 작거나 같은 건수에 대한 누적 백분율을 조회. 누적 분포상에 위치를 0~1사이의 값으로 가진다. - PERCENT_RANK : 파티션에서 제일 먼저 나온 것을 0, 제일 늦게 나온 것을 1로 하여 값이 아닌 행의 순서별 백분율을 조회한다. - NTILE : 파티션별로 전체 건수를 ARGUMENT 값으로 N등분한 결과를 조회한다. - RATIO_TO_REPORT : 파티션 내에 전체 SUM(컬럼)에 대한 행 별 컬럼 값의 백분율을 소수점까지 조회한다. 2) PERCENT_RANK 3) NTILE 4) RATIO_TO_REPORT

1) 순서 관련 윈도우 함수 - FIRST_VALUE : 파티션에서 가장 처음에 나오는 값. MIN 함수를 사용하여 동일한 결과를 얻을 수 있음 - LAST_VALUE : 파티션에서 가장 나중에 나오는 값. MAX 함수를 사용하여 동일한 결과를 얻을 수 있음 - LAG : 이전 행을 가지고 옴 - LEAD : 윈도우에서 특정 위치의 행을 가지고 옴. 기본값은 1 2) FIRST_VALUE / LAST_VALUE 3) LAG/LEAD

1) 집계 관련 윈도우 함수 - SUM : 파티션 별로 합계를 계산한다. - AVG : 파티션 별로 평균을 계산한다. - COUNT : 파티션 별로 행 수를 계산한다. - MAX/MIN : 파티션 별로 최댓값/최솟값을 계산한다. 2) SUM 함수 EX) 사원들의 급여와 같은 매너저를 두고 있는 사원들의 급여 합계 EX) 사원들의 급여와 같은 매너저를 두고 있는 사원들의 급여합을 누적값으로 출력 3) AVG 4) COUNT 5) MAX/MIN

1) 순위(RANK) 관련 윈도우 함수 - RANK : 특정 항목 및 파티션에 대해서 순위를 계산한다. 동일한 순위는 동일한 값이 부여된다. - DENSE_RANK : 동일한 순위를 하나의 건수로 계산한다. - ROW_NUMBER : 동일한 순위에 대해서 고유의 순위를 부여한다. 2) RANK 3) DENSE_RANK 4) ROW_NUMBER

1) WINDOW 함수란? - 관계형 DB는 컬럼과 컬럼 간의 연산, 비교, 연결이나 집합에 대한 집계는 쉬운 반면, 행과 행 간의 관계를 정의하거나 행과 행 간을 비교, 연산하는 것을 하나의 SQL로 처리하는 것이 매우 어렵다. - WINDOW함수는 행과 행 간의 관계를 정의하기 위해 제공되는 함수이다. - WINDOW함수를 통해 순위, 합계, 평균, 행 위치 등을 조작할 수 있다. 2) WINDOW 함수 종류 - 그룹 내 순위함수(RANK) : RANK, DENSE_RANK, ROW_NUMBER - 그룹 내 집계함수(AGGREGATE) : SUM, MAX, MIN, AVG, COUNT - 그룹 내 행 순서 관련함수 : FIRST_VALUE, LAST_VALUE, LAG, LEAD - 그룹 내 비율관련..

1) ROLLUP - GROUP BY 컬럼에 대하여 SUBTOTAL을 만드는 함수 - ROLLUP을 할 때 GROUP BY 구에 컬럼이 두 개 이상 오면 순서에 따라서 결과가 달라짐 - GROUPING COLUMN 수를 N이라고 했을 때 N+1 LEVEL의 SUBTOTAL이 생성됨 2) GROUPING - ROLLUP, CUBE, GROUPING SETS에서 생성되는 합계값을 구분하기 위해 만들어진 함수 - 소계, 합계 등이 계산되면 GROUPING 함수는 1을 반환하고, 그렇지 않으면 0을 반환해서 합계 값을 식별할 수 있음 3) GROUPING SETS - GROUPING SETS 함수는 GROUP BY에 나오는 컬럼의 순서와 관계없이 다양한 소계를 만들 수 있으며, 개별적으로 모두 처리함 - UNI..