Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 使用forxml多次选择同一元素?_Sql Server_Xml_Sql Server 2008_For Xml - Fatal编程技术网

Sql server 使用forxml多次选择同一元素?

Sql server 使用forxml多次选择同一元素?,sql-server,xml,sql-server-2008,for-xml,Sql Server,Xml,Sql Server 2008,For Xml,我发现了一个使用for xml创建xml的示例 但在我的例子中,我需要创建具有多个类似元素的xml。比如: <params> <param>value1</param> <param>value2</param> </param> 我的结果是value1value2。不是我想要的输出 关于如何获得所需输出有什么建议吗?——中间有一个额外的空列 选择 “value1”作为[param], '', “值2”作为[参数]

我发现了一个使用
for xml
创建xml的示例

但在我的例子中,我需要创建具有多个类似元素的xml。比如:

<params>
  <param>value1</param>
  <param>value2</param>
</param>
我的结果是
value1value2
。不是我想要的输出

关于如何获得所需输出有什么建议吗?

——中间有一个额外的空列
选择
“value1”作为[param],
'',
“值2”作为[参数]
对于xml路径(“参数”)
--使用union all的派生表
选择“value1”合并所有
选择“值2”
对于xml路径('param'),根('params'))
--字段列表中的子查询
选择
(为xml路径('param')选择'value1',类型),
(为xml路径('param')选择'value2',类型)
对于xml路径(“参数”)

是否要对这两个参数使用相同的参数标记?Tr this-使用
param2
作为
value2
的别名我已经编辑了您的标题。请参阅“”,其中的共识是“不,他们不应该”。
SELECT (
  SELECT
'value1' AS [param],
'value2' AS [param]
FOR XML PATH('params'))