본문 바로가기
TIL (Today I Learned)

[Oracle SQL] ROW_NUMBER( ) 사용하기

by 프리랜서가 들려주는 IT세계 2019. 8. 29.
반응형

1. ROWNUM 키워드 이용 방법

  • 조회된 순서대로 순번을 매긴다
SELECT ROWNUM
	, COL.*
  FROM SCOTT.EMP COL
 ORDER BY COL.ENAME

 

  • ORDER BY를 사용하면 순번이 뒤섞이므로 정렬된 서브쿼리 결과에 ROWNUM을 매겨야 한다
SELECT ROWNUM
	, Z.*
 FROM ( SELECT COL.*
  		FROM SCOTT.EMP COL
 		ORDER BY COL.ENAME
 	  ) Z

 

2.ROW_NUMBER( ) 함수를 사용하는 방법

 

-ORDER BY 된 결과에 순번을 매길때에는 ROWNUM 보다 ROW_NUMBER( ) 함수가 더 편하다.

SELECT ROW_NUMBER() OVER(ORDER BY Z.AA, Z.BB) NUM
	, Z.*
  FROM SCOTT.EMP Z
ORDER BY Z.AA, Z.BB

-그룹별(PARTITION)로 순번을 따로 부여할 수 있다.

SELECT ROW_NUMBER() OVER(PARTITION BY Z.AA ORDER BY Z.AA, Z.BB) NUM
	, Z.*
  FROM SCOTT.EMP Z
 ORDER BY Z.AA, Z.BB

 

참조: https://gent.tistory.com/170

 

[Oracle|오라클] 조회 순번 매기는 방법 ( ROWNUM, ROW_NUMBER() )

1. ROWNUM 키워드 이용하는 방법 - 조회된 순서되로 순번을 매긴다. SELECT ROWNUM , A.* FROM SCOTT.EMP A ORDER BY A.ENAME - ORDER BY 를 사용하면 순번이 뒤섞이므로 정렬된 서브쿼리 결과에 ROWNUM 을 매겨야..

gent.tistory.com

반응형

'TIL (Today I Learned)' 카테고리의 다른 글

Github #1 Contribution 기록 안될 때  (0) 2020.01.24
Swift #1  (0) 2019.12.28
[기초] Singleton Pattern  (0) 2019.08.30
Unit Test [단위 테스트]  (0) 2019.08.30
Inbound, Outbound Traffic  (0) 2019.07.08

댓글