안녕하세요.
검색해도 원하는 결과를 정확히 찾지 못하고 있어서 질문글 남깁니다.
----------------------------------------
이름 / 구분코드 / 시리얼번호
A / 3 / 1001
B / 3 / 1002
C / 1 / 1003
D / 2 / 1004
E / 4 / 1005
F / 5 / 1006
G / 1 / 1007
----------------------------------------
정렬순서를 정하는 문제인데요.
우선되는 정렬순서는
1. <구분코드>가 3 > 2 > 1 > 5 > 4 의 순서대로 정렬한다.
2. <구분코드>가 같을 경우에는 <시리얼번호>가 큰 순서대로 정렬된다.
위 표로 예로 들면
B / 3 / 1002
A / 3 / 1001
D / 2 / 1004
G / 1 / 1007
C / 1 / 1003
F / 5 / 1006
E / 4 / 1005
이렇게 결과가 나오게됩니다.
<구분코드>가 큰 순서대로 정렬하는 경우라면 간단하게 해결될 것 같은데
그게아니라서 헤매고 있습니다 ;;
도움 부탁드리겠습니다(--)(__)
좋은하루되세요^^
-- 그냥 보기 편하게 SELECT * FROM (SELECT 'A' NM ,3 CD,1001 SEQ FROM DUAL UNION ALL SELECT 'B' ,3 ,1002 FROM DUAL UNION ALL SELECT 'C' ,1 ,1003 FROM DUAL UNION ALL SELECT 'D' ,2 ,1004 FROM DUAL UNION ALL SELECT 'E' ,4 ,1005 FROM DUAL UNION ALL SELECT 'F' ,5 ,1006 FROM DUAL UNION ALL SELECT 'G' ,1 ,1007 FROM DUAL ) order by DECODE(CD,3,1,2,2,1,3,5,4,4,5) ASC