簡體   English   中英

從SQL Server 2012中的XML列中提取值

[英]Extracting a value from a XML column in SQL Server 2012

我已經看到許多解決此問題的問題,但不幸的是我仍然無法使它起作用。

這是一個包含在名為Units的表中的名為RentalValueAmount的XML列中的XML數據的示例:

<X C="1" I="0">
  <E D="1000Y0M0W0D" P="1" A="36500" />
</X>

我試過了,但沒有任何值:

select 
    cast(RentalValueAmount as XML).value('data(/X/E)[1]','varchar(10)') as test
from dbo.units

我需要使用查詢來提取或返回36500作為數字,但我無法這樣做。 顯然我不了解XML,因此我非常感謝您的幫助。

嘗試這個:

select 
cast(RentalValueAmount as XML).value('(/X/E)[1]/@A','varchar(10)') as test
from dbo.units

如果該列已經是XML數據類型,則無需再次將其轉換為XML。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM