반응형
SMALL
-- 상위 n개 데이터를 추출하는 2가지 방법
-- subquery(inline view)
-- rownum / dense_rank() / rank()
SELECT EMPNO,
ENAME,
SAL
FROM EMP
ORDER BY SAL DESC ;
-- 1. 상위 n개의 행(row) 추출 방법 - rownum
SELECT EMPNO,
ENAME,
sal
FROM ( SELECT EMPNO,
ENAME,
SAL
FROM EMP
ORDER BY SAL DESC
)
WHERE ROWNUM < = 3 ;
-- 2. 상위 n개의 행(row) 추출 방법 dense_rank()
SELECT empno, ename, sal,
DENSE_RANK() OVER (ORDER BY sal desc) AS rnk
FROM EMP
;
SELECT EMPNO,
ENAME,
SAL
FROM ( SELECT EMPNO,
ENAME,
SAL,
DENSE_RANK() OVER(ORDER BY SAL DESC) AS RNK
FROM EMP
)
WHERE RNK <= 3 ;
반응형
LIST
'DB > Oracle' 카테고리의 다른 글
[오라클] 오라클 Tips : SQL작성법 (0) | 2023.02.03 |
---|---|
[오라클] DML sample(scott) (0) | 2023.02.03 |
[Oracle]오라클_시노님( Synonym )이란? - 개념 및 사용법 (0) | 2023.02.03 |
[Oracle]서브쿼리 동작 방식을 제어하는 힌트들 (0) | 2023.02.02 |
[Oracle]다른 DB SELECT 하기 (0) | 2023.01.19 |