将选择结果连接成一个

时间:2016-04-12 14:52:35

标签: sql sql-server

我需要编写一个过程或选择将行转换为XML文件中的行的位置。

提取数据并不困难......

SELECT '<XMLData'>
SELECT '<Data1>'+data1+'</Data1><Data2>'+data2+'</Data2>' FROM table
SELECT '</XMLData'>

但那给了我3个结果表。如何将它们连接成1?

2 个答案:

答案 0 :(得分:5)

SELECT '<XMLData>' as xmlResult
UNION ALL
SELECT '<Data1>'+data1+'</Data1><Data2>'+data2+'</Data2>' FROM table
UNION ALL
SELECT '</XMLData>'

答案 1 :(得分:0)

如果您只想要一行,则可以将它们连接起来。将其转换为XML将保留字段中的XML结构。

SELECT CAST(CONCAT('<XMLData>', 
                   '<Data1>'+data1+'</Data1><Data2>'+data2+'</Data2>', 
                   '</XMLData>') as XML) as 'Result 
FROM table