我正在嘗試在 SQL Server 中查詢 XML (SSRS);在這種情況下,我想從 TO 獲取值。
<ParameterValues>
<ParameterValue>
<Name>TO</Name>
<Value>[email protected]</Value>
</ParameterValue>
<ParameterValue>
<Name>RenderFormat</Name>
<Value>EXCEL</Value>
</ParameterValue>
</ParameterValues>
我嘗試了一些查詢,但似乎無法達到那個水平。
uj5u.com熱心網友回復:
您可以使用 XQuery 來完成
SELECT
[TO] = t.XmlColumn.value('(ParameterValues/ParameterValue[Name/text() = "TO"]/Value/text())[1]', 'varchar(100)')
FROM YourTable t
/是一個子節點導航。[]是特定節點上的謂詞測驗。所以這會尋找ParameterValues/ParameterValue哪個有Name文本的孩子TO并回傳Value孩子的文本。
注意使用text()而不是依賴于隱式轉換/原子化。還.value需要保證一個結果,所以需要[1]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/474579.html
標籤:sql服务器 xml tsql xquery-sql
