test table에 t1컬럼에 01~75까지 있습니다
여기에 구분자로 여기에 25마다 구분자로 1, 2, 3이 있는데 예를 들어
t1 t2 - column
01 1
.
.
.
25 1
26 2
.
.
.
50 2
51 3
.
.
.
75 3
이런식으로 값이 들어 있을때 10개의 컬럼이 1개의 로우를 생성 하며
t2의 구분자로 또 하나의 로우가 생성이 됩니다.
01 02 03 ............... 10
11 12 13 ............... 20
21 22 23 ... 25
26 27 28 ............... 35
.
.
.
이런 형식으로 짜여지게 되려면 그룹을 어떤 형식으로 주어야 하는지
일단 10개 컬럼을 1개의 로우로 하는 부분은 되었는데
select min(decode(substr(t1, 2, 1), '1) as c1, ....... min(decode(substr(t1, 2, 1), '0') as c10
from
(
select row_number() over(partition by substr(t1, 2, 1) order by t1) as rn
from test
)
group by rn
이런 형식으로 했는데 다른 방식이 있다면 조언 부탁드립니다.