SQL Server 2000에서 데이터를 피벗하는 방법
SQL Server 2000을 사용하여 데이터를 보다 피벗 구조적인 형식으로 변환하는 문제에 직면 ? 동적 SQL과 비효율적인 접근 방식의 함정을 피하고 데이터 조작의 정확성과 효율성을 보장하는 솔루션을 살펴보겠습니다.
문제 이해
두 가지가 있다고 상상해 보세요. 테이블: 제품 정보가 포함된 제품과 각 제품에 대한 추가 메타데이터를 제공하는 제품 메타입니다. 목표는 데이터를 피벗하여 표 형식으로 표시하고 해당 메타데이터 값과 함께 제품 이름을 표시하는 결과 집합을 만드는 것입니다.
솔루션
이 변환을 달성하기 위해 GROUP BY 내의 집계 함수와 함께 CASE 표현식을 활용합니다. 절:
SELECT P.ProductId, P.Name , MIN(CASE WHEN PM.MetaKey = 'A' THEN PM.MetaValue END) AS A , MIN(CASE WHEN PM.MetaKey = 'B' THEN PM.MetaValue END) AS B , MIN(CASE WHEN PM.MetaKey = 'C' THEN PM.MetaValue END) AS C FROM Products AS P JOIN ProductMeta AS PM ON PM.ProductId = P.ProductId GROUP BY P.ProductId, P.Name
설명
이 접근 방식을 활용하면 SQL Server 2000에서 데이터를 효과적으로 회전하여 동적 SQL의 한계를 피하고 변환에 맞는 깔끔하고 사용 가능한 결과 집합을 생성할 수 있습니다. 요구 사항.
위 내용은 동적 SQL 없이 SQL Server 2000에서 데이터를 피벗하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!