티스토리 뷰


Select 한 데이타에 순번 채번이 필요한 경우

별별 방법을 다 사용해 보았습니다.

임시테이블에 밀어 넣어서 Identify로 순번을 매기던가,

loop돌면서 update 로 채번을 하던가...

참 번거로웠는데, 이런 기능이 DBMS에 숨어있었는지는 몰랐어요.

ROW_NUMBER() 나를 날 코딩해서 해방시켜줌 이 기능

잘 익혀두었다가 써먹어보세요~^^*


-- PARTITION BY -> 그룹 설정
-- ORDER BY -> 순번 매기는 순서

 

 

사용법  

ROW_NUMBER() OVER(PARTITION BY b.machinecd, b.adate ORDER BY b.machinecd,sum(b.losstime) DESC)

 

순번만 채번 할 경우  

SELECT ROW_NUMBER() OVER(ORDER BY codenm DESC) as SEQ,
            codenm
   FROM bicod01t

 

그룹화 할 경우  

SELECT ROW_NUMBER() OVER(PARTITION BY codekind ORDER BY codenm DESC) as GroupSeq,
             codekind,
             codenm
   FROM bicod01t




댓글