[MSSQL] RANK, 순위함수
2014. 3. 12. 17:32ㆍIT
[순위 함수 정리]
1) ROW_NUMBER() : 순차적으로 순위 결정
SELECT
ROW_NUMBER() OVER(ORDER BY [컬럼] DESC) AS '순위'
FROM [테이블]
2) DENSE_RANK() : 중복 순위가 있을 경우에도 강제로 순차적으로 순위 결정
SELECT
DENSE_RANK() OVER( BY [컬럼] DESC) As '순위'
FROM [테이블]
3) RANK() : 중복 순위가 있을때 건너뛰고 순위 결정
SELECT
RANK() OVER( BY [컬럼] DESC) As '순위'
FROM [테이블]
4) 그룹에 대한 순위
... OVER(PARTITION BY [컬럼])
예제:
SELECT
RANK() OVER (PARTITION BY X.[학년도], X.[학기], X.[대학코드], X.[학과코드], X.[전공코드], X.[학생학년] ORDER BY X.[환산점수] DESC) AS '학기별석차'
개인적으로 4번을 많이 사용하게 된다. 누적 석차등에 유용하다.
'IT' 카테고리의 다른 글
[JavaScript] 달력 소스 (0) | 2014.03.13 |
---|---|
[MSSQL] EXISTS, 조건 검색 처리 (0) | 2014.03.12 |
[API] 무료 도로명 주소 검색 API (0) | 2014.03.11 |
[RealGrid+] RealGrid+ Components (0) | 2014.03.04 |
[HTML5] 실전 HTML5 가이드(PDF) (0) | 2014.03.03 |