鉴于以下 XML 示例和select
将 xml 分解为关系的语句,我需要将 的第二列作为select
类别的序数(即,在这种情况下,1 表示方向,2 表示颜色)。
注意:选择中的文字值 'rank()' 是一个占位符。我正在使用rank
,但没有成功。
declare @x xml
set @x = '
<root>
<category>
<item value="north"/>
<item value="south"/>
<item value="east"/>
<item value="west"/>
</category>
<category>
<item value="red"/>
<item value="green"/>
<item value="blue"/>
</category>
</root>'
select c.value('./@value', 'varchar(10)') as "ItemValue",
'rank()' as "CategoryNumber"
from @x.nodes('//item') as t(c)