我有一個表,如下所示:從SQL Server中的XML,獲取下一個同級價值
CREATE TABLE CustomerXmlData
(CustomerId int,
CustomerData xml)
在客戶鏈接到主客戶表和CustomerData是一個XML文檔,看起來像這樣
<Person>
<Product>
<Name>ABC</Name>
<Value>500</Value>
</Product>
<Product>
<Name>XYZ</Name>
<Value>600</Value>
</Product>
</Person>
有幾十萬這樣的行。在僞代碼中,我想要做的是「找到Product
的平均值Value
,其中Name
='XYZ'」。
我知道如何根據元素屬性或基於文檔中具有唯一的父項來獲取值,但在這種情況下這兩者都沒有任何用處。我找不到任何能讓我找到我想要的Name
的東西,然後獲得下一個兄弟的價值。
我可以使用FOR XML
並創建一個邊緣表,但是我需要通過光標來循環顯示嗎?我希望提供更有效的解決方案。
如果它是SQL Server 2005中它(在其XML表格你)XQuery的支持,如果你知道一點的XPath也許可以是一個很好的起點。 http://msdn.microsoft.com/en-us/library/ms345122%28v=sql.90%29.aspx – BigMike
我知道一些XPath ....現在我知道更多一點。非常感謝 –