행을 열로 변환 0 2 2,337

by 다둥이아빠 [SQL Query] [2016.03.30 11:39:51]


안녕하세요~ 초보입니다.

pivot 기능을 사용하지 않고 아래와 같이 행을 열로 변환하고 싶습니다.

도와주세요^^

NO NATION PRO1 PRO2 PRO3
A 미국 TV 냉장고 에어컨
B 일본 핸드폰 자동차 노트북
C 중국 화장품 드라마 자동차
 
 
   
 
     
       
A B C    
미국 일본 중국    
TV 핸드폰 화장품    
냉장고 자동차 드라마    
에어컨 노트북 자동차    
by swlee [2016.03.30 13:10:58]
WITH T (NO,NATION,PRO1,PRO2,PRO3) AS ( 
SELECT 'A','미국','TV','냉장고','에어컨' FROM DUAL UNION ALL
SELECT 'B','일본','핸드폰','자동차','노트북' FROM DUAL UNION ALL 
SELECT 'C','중국','화장품','드라마','자동차' FROM DUAL)
SELECT MIN(DECODE(NO,'A',GB)) A
      ,MIN(DECODE(NO,'B',GB)) B 
      ,MIN(DECODE(NO,'C',GB)) C
  FROM (
        SELECT NO,LV,DECODE(LV,1,NATION,2,PRO1,3,PRO2,4,PRO3) GB
          FROM T, (SELECT LEVEL LV FROM DUAL CONNECT BY LEVEL <= 4))
GROUP BY LV; 

 


by 마농 [2016.04.04 10:16:35]
SELECT a, b, c
  FROM t
 UNPIVOT (v FOR gb IN (nation, pro1, pro2, pro3))
 PIVOT (MIN(v) FOR no IN ('A' a, 'B' b, 'C' c))
 ORDER BY gb
;

 

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