조회한 결과에 순번을 매기는 방법은 ROWNUM과 ROW_NUMBER() OVER() 를 사용하여 만들 수 있다.
테스트 테이블
COUNTRIES
ROWNUM
조회된 결과에 순서대로 순번을 붙여준다.
정렬을하면 순번이 뒤바뀌므로 ORDER BY가 필요하면 아래ROW_NUMBER 구문을 사용하거나 서브쿼리로 빼서 사용가능하다.
SELECT ROWNUM, A.* FROM (SELECT * FROM COUNTRIES ORDER BY REGION_ID) A; | cs |
ROW_NUMBER() OVER(ORDER BY 정렬컬럼1,..)
컬럼을 정렬한 뒤 순번을 매겨준다.
ROW_NUMBER() OVER(PARTITION BY 쪼갤컬럼1,.. ORDER BY 정렬컬럼1,..)
컬럼을 파티션별로 순번을 따로 매겨준다.
SELECT ROW_NUMBER() OVER(PARTITION BY A.REGION_ID ORDER BY A.COUNTRY_ID)AS SEQ,A.* FROM COUNTRIES A; | cs |
REGION_ID별로 순번이 따로 매겨진것을 확인 할 수 있다.
'DB\SQL' 카테고리의 다른 글
[Oracle]조회결과 중복제거(DISTINCT) (0) | 2019.02.27 |
---|---|
[Oracle]오라클 INSERT시 자동채번(MAX+1) (4) | 2019.02.20 |
[Oracle]오라클 문자 합치기(CONCAT, ||) (2) | 2019.02.14 |
[Oracle]오라클 대문자,소문자 변환 UPPER LOWER (0) | 2019.02.13 |
[Oracle]오라클 시퀀스(생성,사용,조회,수정,삭제) (0) | 2019.02.07 |