DENSE_RANK() OVER ( ) 질문드려욤 1 4 1,935

by 봉db [Oracle 기초] 논리적구조 [2015.09.24 17:47:40]


그룹 정렬을 하려고 하는데 잘안되욤 도움 좀 주세요.

 

select DENSE_RANK() OVER ( ORDER BY  bbb) as rn  , aaa, bbb, ccc from test

 

rn aaa bbb ccc
1 3 151515 sdfsw
1 1 151515 asdfwe
1 2 151515 asdfere
2 1 161616 asdfwew
3 1 181818 ddfee

이렇게 하면 앞에 rn 그룹 번호가 잘 매겨져있는데 문제는 aaa 정렬입니다.

그룹번호가 유지되면서 aaa 컬럼이 정렬이 되야하는데 잘안되네요 도움좀 주세요 ㅠㅠ

by 창조의날개 [2015.09.24 19:09:57]

order by rn, aaa


by 봉db [2015.09.25 09:12:47]

그렇게하면 rn 이 1,2,3 순번으로 바껴염 ㅠ

rn은 1, 1, 1 로 유지해야해염 ㅠㅠ


by 창조의날개 [2015.09.25 09:18:49]
select DENSE_RANK() OVER ( ORDER BY  bbb) as rn  , aaa, bbb, ccc 
from test
ORDER BY RN, AAA
;

ORDER BY를 OVER에 말고 FROM절 다음에 넣으시면 됩니다.

 


by 봉db [2015.09.25 09:22:59]

ㄳ ㅋㅋ

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입