단일row를 2개의 row로 바꾸는 방법 0 2 1,086

by 몽환중독자 [SQL Query] [2022.09.23 10:22:29]


안녕하세요.

조회되는 하나의 행을 2개의 행으로 만들고 싶은데요. 

예를 들어서 아래와 같은 형태의 테이터를 

rownum 수령인 편당청구금액 총청구금액 소득코드 직종코드 과세표준율 지급항목 과세표준액 실지급금액 소득명 직종명
1 홍길동 2,000,000 4,000,000 120 101 60 출연료 4,000 5,000 기타소득 기타

아래와 같은 형태로 출력되게 하고 싶은데요. 

rownum 수령인 편당청구금액 소득코드 직종코드 과세표준율
rownum 지급항목 총청구금액 소득명 직종명 과세표준액
1 홍길동 2,000,000 120 101 60
1 출연료 4,000,000 기타소득 기타 4,000

connect by level을 이용해서 해봤는데 잘 안되네요. 참고로 디비는 마리아DB입니다.

방법 좀 부탁드립니다.

by 마농 [2022.09.23 11:01:40]

컬럼 타이틀이 2줄로 나오는 것은 불가능 합니다.


by 마농 [2022.09.23 11:13:56]
WITH t(rownum, 수령인, 편당청구금액, 총청구금액, 소득코드, 직종코드, 과세표준율, 지급항목, 과세표준액, 실지급금액, 소득명, 직종명) AS
(
SELECT 1, '홍길동', 2000000, 4000000, 120, 101, 60, '출연료', 4000, 5000, '기타소득', '기타'
)
SELECT rownum
     , seq
     , CASE seq WHEN 1 THEN 수령인       ELSE 지급항목   END "수령인/지급항목"
     , CASE seq WHEN 1 THEN 편당청구금액 ELSE 총청구금액 END "편당청구금액/총청구금액"
     , CASE seq WHEN 1 THEN 소득코드     ELSE 소득명     END "소득코드/소득명"
     , CASE seq WHEN 1 THEN 직종코드     ELSE 직종명     END "직종코드/직종명"
     , CASE seq WHEN 1 THEN 과세표준율   ELSE 과세표준액 END "과세표준율/과세표준액"
  FROM t
     , seq_1_to_2
;

 

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