연속된 값 순서 처리 0 2 122

by 컴맹개발자 [SQL Query] 순번 정렬 sql [2018.11.08 22:46:55]


연속된 값 순서 정하는데 어려움이 있어서 문의 드립니다. 

데이터   구하고자 하는 순서 값

A                     1

A                     2

B                     1

A                     1

A                     2

A                     3

C                     1  

C                     2

B                     1

B                     2

by 마농 [2018.11.09 10:23:24]
WITH t AS
(
-- 정렬 기준 필요합니다.(seq 추가)
SELECT 0 seq, 'A' cd FROM dual
UNION ALL SELECT 1, 'A' FROM dual
UNION ALL SELECT 2, 'B' FROM dual
UNION ALL SELECT 3, 'A' FROM dual
UNION ALL SELECT 4, 'A' FROM dual
UNION ALL SELECT 5, 'A' FROM dual
UNION ALL SELECT 6, 'C' FROM dual
UNION ALL SELECT 7, 'C' FROM dual
UNION ALL SELECT 8, 'B' FROM dual
UNION ALL SELECT 9, 'B' FROM dual
)
SELECT seq, cd
     , ROW_NUMBER() OVER(PARTITION BY cd, gb ORDER BY seq) rn
  FROM (SELECT seq, cd
             , ROW_NUMBER() OVER(ORDER BY seq)
             - ROW_NUMBER() OVER(PARTITION BY cd ORDER BY seq) gb
          FROM t
        )
 ORDER BY seq
;

 


by 컴맹개발자 [2018.11.09 18:53:49]

오 차를 이용하네 감사합니다.

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