Oracle/SQL작성

세로를 가로로(PIVOT)

니맘대로 2023. 4. 2. 13:21

- Decode, Max를 사용하여 결과를 가로로 표시되게 함.

SELECT
  part,
  MAX(decode(substr(d_seq,length(d_seq)-1,2),'01',c_cd)) A1,
  MAX(decode(substr(d_seq,length(d_seq)-1,2),'02',c_cd)) A2,
  MAX(decode(substr(d_seq,length(d_seq)-1,2),'03',c_cd)) A3,
  MAX(decode(substr(d_seq,length(d_seq)-1,2),'04',c_cd)) A4,
  MAX(decode(substr(d_seq,length(d_seq)-1,2),'05',c_cd)) A5,
  MAX(decode(substr(d_seq,length(d_seq)-1,2),'06',c_cd)) A6
FROM (
	SELECT 
        'SUAA'||(level+20000000) D_SEQ,
        'SUCH'||level P_CD,
        'SBAA'||level C_CD,
         to_char(sysdate,'YYYY/MM/DD') DT,
        '2' INST,
        'SU' PART,
        '100001' SAL,
        '3' INST1,
        '' ETC,
        '100001' ETC1,
         sysdate T_DT,
        '100001' ETC_CD,
         sysdate U_DT
	FROM dual
	CONNECT BY  level <=6
)
GROUP BY part