집 >데이터 베이스 >MySQL 튜토리얼 >DB2에서 행을 열로 바꾸는 방법은 무엇입니까?
데이터베이스에서 데이터 작업을 할 때 행을 전치해야 할 수도 있습니다. 즉, 행과 열을 뒤집는 것입니다. 이는 데이터 분석, 보고 및 기타 목적에 유용할 수 있습니다.
열로 바꾸려는 행이 있는 DB2 테이블이 있는 경우 사용할 수 있는 몇 가지 방법이 있습니다. 한 가지 접근 방식은 소규모 데이터 세트에 효율적일 수 있는 상관 하위 쿼리를 사용하는 것입니다.
SELECT A.ItemID, MAX(CASE WHEN A.Item = 'Meeting' THEN Value END) AS Meeting, MAX(CASE WHEN A.Item = 'Advise' THEN Value END) AS Advise, MAX(CASE WHEN A.Item = 'NoAdvise' THEN Value END) AS NoAdvise FROM A GROUP BY A.ItemID
이 쿼리는 상관 하위 쿼리를 사용하여 각 행의 각 항목에 대한 최대값을 찾습니다. MAX() 함수는 값을 집계하는 데 사용되며 CASE 문은 어느 열에 값을 할당할지 결정하는 데 사용됩니다.
행을 열로 바꾸는 또 다른 방법은 집계와 피벗을 조합하는 것입니다. 기능. 이 접근 방식은 단일 SQL 문을 사용하여 전치를 수행하므로 대규모 데이터세트에 더 효율적일 수 있습니다.
SELECT ItemID, MAX(CASE WHEN Item = 'Meeting' THEN Value END) AS Meeting, MAX(CASE WHEN Item = 'Advise' THEN Value END) AS Advise, MAX(CASE WHEN Item = 'NoAdvise' THEN Value END) AS NoAdvise FROM ( SELECT ItemID, Item, Value FROM TableName ) AS t GROUP BY ItemID PIVOT (MAX(Value) FOR Item IN ('Meeting', 'Advise', 'NoAdvise'))
이 쿼리는 PIVOT() 함수를 사용하여 데이터를 전치합니다. PIVOT() 함수는 피벗할 열(이 경우 Item)과 새 열에 포함할 값 목록(이 경우 Meeting, Advise 및 NoAdvise)이라는 두 가지 인수를 사용합니다.
위 내용은 DB2에서 행을 열로 바꾸는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!