1
我试图查询XML类型的XML字段,以便在存储过程中进行。已知属性“x”的属性“y”的T-SQL XQuery值
该字段具有多个具有相同名称的元素,并且每个元素具有多个属性。查询需要返回c的值,其中r(该字段中的唯一值)的值是已知的。 例如。在属性r“FGH”的值下面的XML字段中返回属性值c。每个r的值都是唯一的,所以只返回一行。
<Assets>
<Cars>
<Car r="ABC" c="Nissan" t="petrol"/>
<Car r="FGH" c="VW" t="petrol"/>
<Car r="XYZ" c="Mini" t="diesel"/>
</Cars>
</Assets>
我试图查询的删节版本是:
USE MyDB
DECLARE
@ASSETS XML = null,
@car nvarchar(50)
SELECT @ASSETS = ASSETS FROM MyTable WHERE ID = 26800
SELECT @car = @ASSETS.value('(//*/*/@FGH', 'nvarchar(max)') ;
我可以看到这是不对的,但完全被卡住。
谢谢@AakashM。完善。 – bjh