고수님들 쿼리 하나만 부탁드립니다. 0 1 790

by K-ART [SQL Query] [2020.07.22 20:00:40]


테이블

 20200701          100        200      300    400

 20200702          111        222      333    444

 20200703          222        333      444    555

 20200704          666        777      888    999

 20200705          100        200      300    400

 20200706          111        222      333    444

결과 예시  날짜을 1일   변환

 

 20200701                

--------------------

결과

 100                                  

 200                                    

 300                                  

 400                                    

 

 

by 마농 [2020.07.23 07:56:13]
WITH t AS
(
SELECT '20200701' dt, 100 v1, 200 v2, 300 v3, 400 v4 FROM dual
UNION ALL SELECT '20200702', 111, 222, 333, 444 FROM dual
UNION ALL SELECT '20200703', 222, 333, 444, 555 FROM dual
UNION ALL SELECT '20200704', 666, 777, 888, 999 FROM dual
UNION ALL SELECT '20200705', 100, 200, 300, 400 FROM dual
UNION ALL SELECT '20200706', 111, 222, 333, 444 FROM dual
)
SELECT *
  FROM (SELECT dt
             , v1, v2, v3, v4
          FROM t
         WHERE dt IN ('20200701', '20200702', '20200703')
        )
 UNPIVOT (v FOR gb IN (v1, v2, v3, v4))
 PIVOT (MIN(v) FOR dt IN ('20200701', '20200702', '20200703'))
 ORDER BY gb
;

 

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