조회한 결과에 순번을 매기는 방법은 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별로 순번이 따로 매겨진것을 확인 할 수 있다.