我已成功獲取使用此查詢的子元素的計數。SQL Server:按元素名稱計數XML元素
SELECT
raa.ApplicationXML.value('count(Root/ThirdParty/*)', 'Int') as [Bureau Count]
FROM
Table1 raa
但是,我想通過子元素的實際名稱對這個計數進行分組。
我的XML看起來是這樣的:
記錄1:
<Root>
<ThirdParty>
<BureauRed />
<BureauGreen />
<BureauBlue />
</ThirdParty>
</Root>
記錄2:
<Root>
<ThirdParty>
<BureauRed />
<BureauPurple />
<BureauBlue />
</ThirdParty>
</Root>
記錄3:
<Root>
<ThirdParty>
<BureauGreen />
<BureauRed />
<BureauPurple />
<BureauOrange />
<BureauBlue />
</ThirdParty>
</Root>
我不僅需要拉各自的數量局,但我需要得到局(BureauRed,BureauGreen,BureauBlue等)的名稱,當我嘗試按計數我得到的錯誤:
XML methods are not allowed in a GROUP BY clause.
使用此查詢:
SELECT
raa.ApplicationXML.value('count(Root/ThirdParty/*)', 'Int') as [Bureau Count]
FROM
Table1 raa
GROUP BY
raa.ApplicationXML.value('count(Root/ThirdParty/*)', 'Int')
我如何得到主席團的人數和名稱?
我在尋找這樣的結果:
Bureau Count
============ =====
BureauRed 3
BureauGreen 2
BureauBlue 3
BureauPurple 2
BureauOrange 1
對於那些三個記錄 –
這是更好地給我們的樣本數據作爲填充臨時表提供預期的結果 –
我更新了故事;對不起,這些號碼沒有排隊。 – user3179585