-- 분석 함수
-- RANK OVER()
-- ROW_NUMBER() OVER() ** 중요 제일 많은 씀 **
-- 순위를 구함.
-- RANK() OVER()는 동일 순위인 경우 1,1,3, 형식으로 출력하지만
-- ROW_NUMBER() OVER()는 동일 순위인 경우 1,2,3, 형식으로 출력
-- DENSE_RANK() OVER()는 동일 순위인 경우 1,1,2 형식으로 출력
-- ROW_NUMBER() OVER()는 매우매우매우 중요한 함수이므로 반드시 알아 둘것 !!!!!!!!!!!!!!!!!!!
-- ***** 나중에 게시판 작성 할 때 사용하는 쿼리 형식이므로 반드 암기 해야함. *****
-- ROW_NUMBER()를 이용한 쿼리가 아래 ROWNUM을 사용한 쿼리보다 우수
SELECT num,name,basicpay FROM(
SELECT num, name, basicpay, ROW_NUMBER() OVER(ORDER BY num DESC) rnum FROM insa
) WHERE rnum>= 10 AND rnum <=15 ORDER BY num DESC;
SELECT num,name,basicpay FROM(
SELECT ROWNUM rnum, num, name, basicpay FROM(
SELECT num, name, basicpay FROM insa ORDER BY num DESC
)
)WHERE rnum>=10 AND rnum<=15;
출처: http://tibang.tistory.com/entry/오라클-분석-함수-RANK-OVER-ROWNUMBER-OVER [T없이맑은날]
'개발 > 데이타베이스' 카테고리의 다른 글
LISTAGG ... WITHIN ... ROWNUM 적용하고 싶을 때 .. (0) | 2017.02.09 |
---|---|
[ORACLE] ROLLUP, CUBE, GROUPING (0) | 2017.02.06 |
[ORACLE] LISTAGG ... WITHIN ... (0) | 2017.02.06 |
오라클 (+) LEFT OUTER JOIN (3) | 2017.02.02 |
oracle 문자열 line feed, carrage return 개행 문자 삭제 (0) | 2017.01.16 |
댓글