가령 쿼리 실행 시 400라인이 조회가 되었다고 가정했을 때
50라인씩 잘라서 필드에 숫자를 기입하고 싶습니다.
1~50 : 1
51~100 : 2
101~150:3
.
351~400 : 8
이런식으로 필드를 만들려고 하는데. 쿼리의 실행갯수가 가변적이라....어떻게 해야 50개씩 잘라서 필드에 값을 넣을 수 있을까요???
oracle은 써본적이 없어서..
mssql 로 작성되었습니다.
--쿼리 시작
with table_a as ( select 1 As data ) ,table_b as ( Select a.data ,0 As seq From table_a a Union All Select a.data ,seq = a.seq + 1 From table_b a Where seq < 100 ) ,table_c as ( Select a.data ,seq = a.seq + 1 ,num = Convert(Decimal(18,0),Round(( a.seq / 50 ) + 0.5 ,0)) From table_b a ) Select a.data ,a.seq ,a.num From table_c a
--결과
seq 1 ~ 50 -> num = 1
seq 51 ~ 100 -> num = 2
seq 101 -> num = 3