[SQL] 순위 매기기
1. RANK 그룹 내 현재 행의 순위를 반환한다. 동점인 경우에는 동일한 순위를 반환하며, 다음 순위는 그 수만큼 건너뛰어 매겨진다. > 1, 2, 2, 4, 5, --- 2. DENSE_RANK 그룹 내 현재 행의 순위를 반환한다. 동점인 경우에 동일한 순위를 반환하며, rank와 다른 점은 다음 순위는 연속된 값으로 이어진다. > 1, 2, 2, 2, 3, 4, 4, 5 --- 3. ROW_NUMBER 그룹 내 현재 행의 수를 반환한다. 행 마다 다른 값을 반환한다. 즉 공동 순위를 허용하지 않고 순차적으로 순위를 매길 때 활용한다. 정렬 기준이 2개 이상일 때 사용하기 좋다. 기본 형태는 다음과 같다. rank | dense_rank | row_number() over(partition by co..
2024. 1. 1.
[SQL] ROLLUP_총계, 소계 구하기
- 총계, 소계 구하기 [ ROLLUP 함수 ] - Rollup함수는 그룹 항목 총합(총계)이나, 각 그룹 별 중간합계(소계)를 구할 때 사용한다. - 이때 합계값만 추가하는 거라 나머지 필드 이름 자리에는 NULL값이 들어간다. 예시 ) MySQL : A, B with rollup / ORACLE : rollup( A, B ) select Category ,sub_category , sum(Amount) from ecommerce.order_details od group by category, sub_category with rollup -------------------------------------------- select Category ,sub_category , sum(Amount) from..
2024. 1. 1.