쿼리 질문 드립니다! 0 2 701

by 구루업투 [SQL Query] [2017.11.20 18:32:09]


안녕하세요.

PIVOT을 하려는데 잘안되서..PIVOT방식으로 하는게 맞는건지 ...

아래와 같이 1번테이블이 있는데 각 국가별로 날짜가 있습니다. 

거기에 한국과 일본이 컬럼 네임이되고 각 국가의 날짜가 행으로 들어가게 하려고하는데 잘안되네요..

도움부탁드립니다!

 

테이블1

구분 국가 날짜
A 한국 11/20
A 일본 11/21
B 한국 11/22
B 일본 11/23

 

테이블2

구분 한국 일본
A 11/20 11/21
B 11/22 11/23

 

by 무지버기 [2017.11.21 08:07:03]
WITH T AS (
    SELECT 'A' 구분, '한국' 국가, '11/20' 날짜 FROM DUAL UNION ALL
    SELECT 'A'     , '일본'     , '11/21'      FROM DUAL UNION ALL
    SELECT 'B'     , '한국'     , '11/22'      FROM DUAL UNION ALL
    SELECT 'B'     , '일본'     , '11/23'      FROM DUAL 
)
SELECT
*
FROM T
PIVOT (MIN(날짜) FOR 국가 IN('한국','일본'))

 


by 고수가되고싶어요 [2017.12.06 16:03:09]
WITH T AS (
 SELECT 'A' GUBUN , '한국' NATION, '11/20' DT FROM DUAL 
 UNION ALL SELECT 'A' GUBUN , '일본' NATION, '11/21' DT FROM DUAL 
 UNION ALL SELECT 'B' GUBUN , '한국' NATION, '11/22' DT FROM DUAL 
 UNION ALL SELECT 'B' GUBUN , '일본' NATION, '11/23' DT FROM DUAL )
 
 
SELECT GUBUN 구분
	  ,MIN(DECODE(NATION,'한국',DT)) 한국
      ,MIN(DECODE(NATION,'일본',DT)) 일본
FROM T
GROUP BY GUBUN

 

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