파게로그

[SQL] ROWNUM, simple TOP-n queries 본문

콤퓨타 왕기초/SQLD/JDBC/Oracle DB

[SQL] ROWNUM, simple TOP-n queries

파게 2021. 4. 2. 04:32

ROWNUM

SELECT ROWNUM, empno, ename, title, sal
  FROM emp
  WHERE ROWNUM <= 5;

ROWNUM은 pseudo column으로서 감춰져있는 column이다. 대용량 데이터의 상단 행만 살펴보고자 할 때 유용하다.

 

 

 

simple TOP-n queries

SELECT empno, ename, title, sal
  FROM emp
  ORDER BY sal DESC
  FETCH FIRST 20 PERCENT ROW ONLY;

 

 

 

SELECT empno, ename, title, sal
  FROM emp
  ORDER BY sal DESC
  FETCH FIRST 2 ROWS WITH TIES;

WITH TIES를 통해 여러 row의 값이 같을 때, 해당 row를 모두 출력할 수 있다.

 

 

 

SELECT empno, ename, title, sal
  FROM emp
  ORDER BY sal DESC
  OFFSET 9 ROWS;

sal DESC를 기준으로 정렬
결과

offset = n이면 n+1번째 행부터 출력한다.

 

 

 

SELECT empno, ename, title, sal
  FROM emp
  ORDER BY sal DESC
  OFFSET 9 ROWS
  FETCH FIRST 2 ROWS ONLY;

offset = 9이므로 10번째행부터 출력되는 5개의 행 중에서 2개의 행만 출력한다.

'콤퓨타 왕기초 > SQLD/JDBC/Oracle DB' 카테고리의 다른 글

SQLD 시험 후기  (0) 2021.09.05
[SQL] PIVOT, UNPIVOT  (0) 2021.04.02
[SQL] 데이터 분석 함수  (0) 2021.04.01
[SQL] 집계함수(aggregate functions)  (0) 2021.03.31
[SQL] SQL로 IF문 구현  (0) 2021.03.31
Comments