T-SQL XQuery 用于为每个嵌套元素的每个匹配 XML 值返回一个结果行
T-SQL XQuery for returning a result row per matching XML value for each nested element
给定 XML 数据类型列 x 在 table y 中,其值如下:
<a>
<b>
<c>1</c>
<c>2</c>
<c>3</c>
</b>
</a>
如何使用 T-SQL XQuery 获得结果集,以便每个 <c>
元素值 return 编辑一行?
假设 table y 也有 z 列,其中包含 x 列中 <c>
元素的数量 - 这样我们就有了 return.
的附加列
到目前为止我们能想到的最好的是:
select
z,
cvalues = x.query('data(a/b/c)')
from y
上面的内容将 return 在 y 中每行一行,并且有一个白色的 space 分隔列 cvalues 中的 <c>
元素的值列表。
我们怎样才能得到这样的结果集:
z cvalues
3 1
3 2
3 3
而不是我们现在得到的:
z cvalues
3 1 2 3
谢谢!
给定 XML 数据类型列 x 在 table y 中,其值如下:
<a>
<b>
<c>1</c>
<c>2</c>
<c>3</c>
</b>
</a>
如何使用 T-SQL XQuery 获得结果集,以便每个 <c>
元素值 return 编辑一行?
假设 table y 也有 z 列,其中包含 x 列中 <c>
元素的数量 - 这样我们就有了 return.
到目前为止我们能想到的最好的是:
select
z,
cvalues = x.query('data(a/b/c)')
from y
上面的内容将 return 在 y 中每行一行,并且有一个白色的 space 分隔列 cvalues 中的 <c>
元素的值列表。
我们怎样才能得到这样的结果集:
z cvalues
3 1
3 2
3 3
而不是我们现在得到的:
z cvalues
3 1 2 3
谢谢!