목록ROWNUM (2)
최보름달
[SQL] ROWNUM, TOP()
ROWNUM 오라클에서 순위가 높은 N개의 로우를 출력할때 사용하는 명령어. 오라클은 정렬이 완료된 후 데이터를 출력하는게 아니라, 데이터 일부를 추출한 후에 정렬작업이 일어난다. 급여가 높은 3명만 추리고 싶을 때 -- 이렇게 하면 엉뚱한 결과가 나온다. 틀린 쿼리. SELECT ENAME, SAL FROM EMP WHERE ROWNUM < 4 -- 이걸 먼저 수행하고 ORDER BY SAL DESC ; -- 이게 돌아버리기 때문. -- 이렇게 하셔야 합니다. SELECT ENAME, SAL FROM ( SELECT ENAME, SAL FROM EMP ORDER BY SAL DESC ) -- 인라인 뷰를 이용해서 데이터셋을 구성해줘야 한다. WHER ROWNUM < 4 ; TOP() 오라클과 달리 sq..
문송한 회사생활/SQL 공부
2020. 8. 14. 21:35