[오라클 SQL] ROW_NUMBER() 를 이용한 Ranking(순위) 구하는 방법
- Database(데이터베이스)/Oracle
- 2019. 5. 8. 11:54
안녕하세요~~
이번 포스팅에서는 오라클 SQL에서 ROW_NUMBER() 함수를 이용하여 Ranking(순위)를 구하는 방법에 대해서 알아보도록 하겠습니다.
우선, Student 테이블에 아래와 같은 데이터들이 있습니다.
여기서 저는 ROW_NUMBER()함수를 이용하여 같은 학년(GRADE)중에 나이가 제일 많은 순서대로 순위를 매겨 보도록 하겠습니다.
SQL 문
1 2 3 |
SELECT NAME, AGE, GRADE, ROW_NUMBER() OVER (PARTITION BY GRADE ORDER BY(AGE) DESC) AS 학년별나이순위 FROM WIN.STUDENT |
위 SQL문에서 “ROW_NUMBER() OVER (PARTITION BY
GRADE ORDER BY(AGE) DESC) AS 학년별나이순위 “ 이
부분을 보시게 되면, PARTITION BY GRADE로 설정을 주었는데 이 부분은 학년별 기준으로 ORDER BY(AGE)라고 하여, 학년별 기준 나이 순으로 Ranking(순위)를 부여한다 라고 이해하시면 되겠습니다!
실행 결과
위와 같이 안정환, 류현진, 홍길동, 범범조조, 원숭이 순으로 학년별 나이 순위가 매겨진 것을 확인 하실 수 있습니다.
ROW_NUMBER()함수 사용법을 알고 계신다면, 실무에서도 유용하게 사용이 가능 하기 때문에, 꼭 알아 두시면 좋겠습니다.
감사합니다ㅎㅎ
728x90
'Database(데이터베이스) > Oracle' 카테고리의 다른 글
[오라클 SQL] CASE 함수 CASE ~ WHEN~ THEN 사용 방법 및 예시 (0) | 2019.05.21 |
---|---|
[오라클 SQL] 오라클 Toad 환경에서 .mdb파일 Import 하는 방법 (0) | 2019.05.20 |
[오라클 SQL] 데이터 삽입 INSERT 사용 방법 (0) | 2019.04.27 |
[오라클 DB] INTERVAL을 이용하여 날짜 및 시간 더하기, 빼기 방법 (0) | 2019.04.25 |
[오라클 PL/SQL] 변수 선언 방법 (0) | 2019.04.24 |
이 글을 공유하기