2017-09-29 3 views
1

여러 행을 열로 저장하는 필드를 어떻게 변환 하시겠습니까?SQL 행을 열로 변환

현재 데이터 :

COL1 COL2 COL3 
---------------- 
TEST 30 NY 
TEST 30 CA 
TEST2 10 TN 
TEST2 10 TX 

I 출력이되고 싶습니다 : 샘플 데이터를 기반으로

COL1 COL2 COL3 COL4 
------------------------ 
TEST 30 NY CA 
TEST2 10 TN TX 
+0

일반적으로 PIVOT 기능이 있습니다. –

+0

rdbms 란 무엇입니까? SQL 서버, 포스트 그레스, 오라클? –

+0

피봇을 검색합니다. 예 : http://modern-sql.com/use-case/pivot –

답변

1

, 당신이 시도 할 수 있습니다. 피벗을 사용할 필요가 없습니다.

SELECT col1, 
     col2, 
     MIN(col3) col3, 
     MAX(col3) col4 
    FROM table 
GROUP BY col1, 
      col2 
+0

예, 샘플 데이터가 있으면 작동하지만 동일한 col1 및 col2를 가진 행이 3 개 이상인 경우에는 작동하지 않습니다. –

+0

알아. 나는 각 col1과 col2에 2 개 이상의 행이있는 상황에 대해 row_number()를 사용할 수 있지만 col3과 col4에 있어야하는 논리 솔루션을 결정해야합니다. –