在SQL SERVER中转换XML函数

时间:2014-09-17 09:18:28

标签: sql sql-server xml sql-server-2008 converter

我有一个XML COlUMN,我需要使用Convert(xml)

从中检索一个值

在下面的Billing列中,我可以获取CODE / Description的值,但是如何获得PRICE Value的值。

<BILLING><PRICE Value="5.00" Code="500-1300">
<CODE>11301</CODE>
<DESCRIPTION>Poly_806677</DESCRIPTION></PRICE>

我希望得到5.00的价值

我用来获取CODE值的代码是

CONVERT(xml, BillID).value('(/BILLING/PRICE/CODE)[1]','varchar(500)')

您能否提出任何建议?

1 个答案:

答案 0 :(得分:2)

试试这个。

DECLARE @xml AS XML

SET @xml = '<BILLING>
<PRICE Value="5.00" Code="500-1300">
<CODE>11301</CODE>
<DESCRIPTION>Poly_806677</DESCRIPTION></PRICE>
</BILLING>'

SELECT @xml.value('(/BILLING/PRICE/@Value)[1]', 'varchar(500)')

及以下行为您提供代码值。

SELECT @xml.value('(/BILLING/PRICE/@Code)[1]', 'varchar(500)')