본문 바로가기
프로그래밍/SQL

Oracle dense_rank 함수 활용

by 착살의 숲 2018. 11. 26.
반응형

1. 컬럼2로 GROUP BY 한 조건의 컬럼1로 정렬한 데이터 중 마지막 컬럼의 ROWID을 가져온다. (ROWID 대신 컬럼 사용 가능)
SELECT MAX(ROWID) KEEP (DENSE_RANK LAST ORDER BY 컬럼1) FROM 테이블
GROUP BY 컬럼2

2. 컬럼1 조건으로 컬럼2를 정렬한 데이터의 순번을 매긴다.
SELECT ROW_NUMBER() OVER (PARTITION BY 컬럼1 ORDER BY 컬럼2) FROM 테이블

반응형

댓글