제목에 설명 된대로 구성된 키 (기본 키 및 위치 키)와 XML (고정 스키마 포함)이 포함 된 값 열이있는 테이블이 있습니다. 키에 의한 SQL Server 그룹 및 xml 열에 대한 합계
고정형 XML
는 다음과 같이 나타납니다<Data>
<ItemACount></ItemACount>
<ItemBCount></ItemBCount>
</Data>
는 ItemACount 및 ItemBCount 모두 양의 정수를 나타냅니다.
각 그룹에 대해 각각의 ItemACount와 ItemBCount의 합계를 계산할 때 동일한 기본 키 (그러나 다른 위치 키)를 가진 그룹 레코드를 원합니다.
나는 아래와 같은 SQL 코드 쓰기 :
SELECT
MainKey AS MainKey
SUM ([Value].value('/Data/ItemACount/@value')) AS TotalItemACount ,
SUM ([Value].value('/Data/ItemBCount/@value')) AS TotalItemBCount
FROM
[dbo].[tblItems]
GROUP BY
[MainKey]
을하지만 구문 오류 얻을 : 내가 올바른 구문 인 이해하고자하는
Cannot find either column "Value" or the user-defined function or aggregate "Value.value", or the name is ambiguous.
합니다.
확인하십시오 : https://stackoverflow.com/questions/6786687/extracting-sum-of-data-from-xml-in-sql –
ROGERIO 카르발류 @ 내 상황이 조금 다릅니다 다른 XML에서 필드를 요약해야합니다 (각 필드는 xml마다 고유하지만 각 행에서 반복됩니다) – Skary
그러나 솔루션은 동일하지만 하위 equery를 만들어 e와 e를 먼저 반환 할 수 있습니다 기본 쿼리는 그룹을 적용합니다. –