我有一個帶有 XML 列 (xmlCol) 的表,我正在嘗試從中查詢一個值。
這是xml。
<criteria>
<factor name="Rivers" title="Rivers">
<value dataType="Int32" value="1743" description="Wilson0" />
</factor>
<factor name="OptionalAffProperties" title="Include properties">
<value dataType="String" value="FishingModel" description="Fishing Model" />
</factor>
</criteria>
這是獲取列的選擇。從 MyTable 中選擇 xmlCol
我試圖將值 1743 回傳到名為 RiverID 的列。
麥克風
uj5u.com熱心網友回復:
這應該有效:
SELECT
xmlCol.value('(//factor[@name="Rivers"]/value/@value)[1]', 'int') As RiverID
FROM
MyTable
value() 方法(xml 資料型別)- SQL Server | Microsoft Docs
XQuery 語言參考 (SQL Server) - SQL Server | 微軟檔案
uj5u.com熱心網友回復:
要獲取屬性值,您可以像這樣查詢:
select xmlCol.value('(/criteria/factor/value/@value)[1]', 'int') RiverID
from MyTable
您提供要查找的記錄的 xml 路徑: (/criteria/factor/value
然后是您需要的屬性:/@value)[1].
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/378872.html
