본문 바로가기
데이터베이스/SQL

SQL 출력되는 행 제한하기 ROWNUM, Simple TOP-n Queries

by ADELA_J 2023. 12. 24.

<ROWNUM>

- 출력되는 데이터에 번호를 부여

 

▼ 사원번호, 이름, 직업, 월급을 상단 5개 행만 출력

 

 

* Pseudo column, '가짜 컬럼'. 전체 출력(*) 으로 검색해서 출력되지 않는 감춰진 컬럼

rownum 이 여기에 속함. 

WHERE 절을 사용해서 원하는 데이터 행만 불러올 때 사용할 수 있음. (상단 행만 살펴볼때 유용)

 

*Simple TOP-n Queries*

 

<ROW_LIMITING>

- 출력되는 데이터 건수를 제한 하는 방법

 

▼ 월급이 높은 사원순으로 사원번호, 이름, 직업, 월급을 4개 행으로 제한해서 출력

 

▷ 요것을 TOP-N Query 라고 함.

    : 정렬된 결과로부터 위 or 아래쪽의 N개의 행을 출력하는 쿼리

     :  위에서 배운 ROWNUM은 서브 쿼리를 사용하기 때문에 복잡해질 수 있는데 이건 단순하게 출력 가능

 

▼ 월급이 높은 사원들 중 20%에 해당하는 사원들만 출력

 

▼ 위에서 N번째 행만 출력한다면

 

앞에서 했듯이 FIRST 2 ROWS ONLY 하면되지만

WITH TIES를 해준다면 동일한 값을 가진 것까지 함께 출력된다.

 

▼ 월급이 10번째(9+1)로 높은 사원부터 모두 출력하기

 

▼ 월급이 10번째로 높은 사원부터 2명만 출력하기

 

▷ OFFSET과 FETCH를 조합해서 출력할 수 있음.