[SQLD] 3-11. Top N 쿼리 - 키워드 요약 | 정리 | SQLD 공부 | 개발자 자격증 | SQL 기본 및 활용 :: 매운코딩
728x90
300x250

[과목2.SQL 기본 및 활용 3-11. Top N 쿼리]

 

1.     Top N 쿼리?
:
특정 순서로 데이터를 부분적으로 쿼리하는 것
DBMS
마다 조금씩 다름

2.     ROWNUM 슈도 컬럼 (Oracle 문법)

: SQL 처리결과시 각 행에 임시로 부여되는 일련번호

 

3.     ROWNUM 주의사항

(1)   Oracle의 경우, 데이터의 일부가 먼저 추출된 후에 데이터에 대한 정렬 작업이 이루어진다. è 인라인 뷰를 이용하여 집합을 정렬한 후 rownum적용 시켜 올바른 SQL문 사용할 것

 

4.     TOP ( SQL Server 문법)

: TOP절은 결과 집합으로 출력되는 행의 수를 제한한다.

예시) TOP( Expression) [PERCENT] [WITH TIES]

-      Expression : 반환할 행 수 지정

-      PERCENT : 쿼리결과 집합에서 처음 Expression%의 행만 반환됨 (Expression건이 아니라 Expression % 만큼으로 반환해라는 것)

-      WITH TIES : order by 절이 지정된 경우에만 사용 가능하며, 마지막 행과 같은 값이 있으면, 추가행이 출력되도록 지정한다. (ex. Top(2)여도 2등중에 같은 값을 가진사람이 여러명이면 여러명을 다보여준다. 동점자..)

 

5.     ROW LIMITING(ANSI 표준-모두 다 사용가능)

(1)   ROW LIMITING절 문법
[OFFSET N {ROW | ROWS }]
[FETCH {FIRST | NEXT} [{rowcount | percent PERCENT}] { ROW | ROWS } {ONLY | WITH TIES}]

-      OFFSET N : 건너뛸 행의 개수 지정

-      FETCH : 반환할 행의 개수 또는 백분율 지정

-      ONLY : 지정된 행의 개수나 백분율 만큼만 행을 반환

-      WITH TIES : 마지막 행에 대한 동순위 포함해서 반환

728x90

+ Recent posts