我怎样才能获得SQL服务器2K8 R2,而不诉诸兼容性模式返回此xml
-
27-09-2019 - |
题
我们正在提升我们的SQL服务器2K8 R2和的FOR XML AUTO查询已经改变了输出的过程。
这三个表的查询输出列
在结果集返回三行每一列是相同条从第三表的最后两列。用于显示如下的结果
<element1 myval="Test">
<element2 myotherval="atest">
<element3 a="a"/>
<element3 a="b"/>
<element3 a="c" />
</element2>
</element1>
它不显示
<element1 myval="Test">
<element2 myotherval="atest">
<element3 a="a"/>
</element2>
</element1>
<element1 myval="Test">
<element2 myotherval="atest">
<element3 a="B"/>
</element2>
</element1>
<element1 myval="Test">
<element2 myotherval="atest">
<element3 a="C"/>
</element2>
</element1>
我一直在试图使用对于XML路径,但它仍返回元素1的3个独立的实例,而不是对数据进行分组。
解决方案
如果您在使用FOR XML PATH希望有一个子树,你得写每个子树子查询。所以你的情况,你有父select语句部件1,和其中一列是一个子查询得到任何需要在element2的(这反过来也可以是子查询)。如果您使用子查询,你想从这些返回的XML,使用
有关XML路径( 'elementN'),TYPE
或它会逸出的XML代码。
不隶属于 StackOverflow