KH/Oracle

[Oracle] ROWNUMBER, ROW_NUMBER() OVER / 조회 순번 매기는 방법

오늘의 진 2022. 12. 6. 13:36

아래의 MP_BOARD 테이블을 기준으로 설명

 

 

ROWNUM  사용


SELECT ROWNUM , A.* FROM MP_BOARD A ;

 

단순히 조회된 행에 ROWNUM  열 번호를 붙인다. 

 

SELECT ROWNUM , A.* FROM (SELECT * FROM MP_BOARD ORDER BY BNO DESC )A;

출력하고자 하는 열을 FROM절 안에서 원하는 대로 정렬을하고, 예시에서는 BNO 의 내림차순으로 정렬을 하고 정렬을 한 데이터에 대하여 ROWNUM 을 부여하였다.   

 

 

 

 

 

 

ROW_NUMBER( )  사용


 

select row_number() over(order by a.bno) row_num, a.* from mp_board a;

over() 내부에 row_number()를 줄 기준을 정한다. 

예시에서는 bno의 오름차순으로 정렬하여 순번을 매긴다. 

 

 

row_number() 에서 파티션 사용하는 방법 

select row_number() over(partition by a.writer order by bno ) row_num, a.* from mp_board a;

 

 

 

'KH > Oracle' 카테고리의 다른 글

# 19 USER 계정 생성  (0) 2022.09.05
# 18 on delete cascade & on delete set null  (0) 2022.09.02
# 17 SEQUENCE (시퀀스)  (0) 2022.09.02
# 16 Transaction (트렌젝션)  (0) 2022.09.01
# 15 DML- insert, update,delect  (0) 2022.08.31