【发布时间】:2016-06-29 16:25:41
【问题描述】:
我已通读 SO:XML data type method “value” must be a string literal,但我的问题有点不同。我在一个变量中有一些 xml,我想把它分开并给出一条路径。最初我尝试过这个:
declare @x xml
select @x = '....'
select @x.value('(' + @path + ')[1]', 'varchar(max)')
但是,当然,这失败了。然后我找到了 sql:variable 并尝试了这个:
select @x.value('(sql:variable("@path"))[1]', 'varchar(max)')
但这奇怪地返回了@path 的值(为什么?)。我一直在搞砸它,但无法让它做正确的事情。
有人想吗?
【问题讨论】:
-
请在此处使用实际的 SO URL。您可以右键单击任何问题或答案底部的
share链接并选择Copy,它将按标题正确链接(就像我在上面对您的 URL 所做的那样)。谢谢。