将 select 查询结果在 SQL 服务器中转换为 XML 格式

Convert select query result to XML format in SQL Server

我正在尝试使用存储过程将结果转换为 XML 格式我的代码如下

SELECT 
    K.KeyWord as Result 
FROM 
    SearchKeyword K 
WHERE 
    K.KeyWord LIKE @SearchWord + '%'   
FOR XML PATH 'Root', BINARY BASE64)

但是return如下

<Root>
   <Result>1</result>
<Root>

<Root>
   <Result>2</result>
<Root>

但我需要像下面这样的结果删除一个根元素

<Root>
    <Result>1</Result>
    <Result>2</Result>
    .
    .
    .
</Root>

请大家帮忙

select K.KeyWord as Result 
from ... as k
where ...
for xml path(''), root('Root'), binary base64

sql fiddle demo

DECLARE @tab TABLE ([A]NVARCHAR(MAX))

INSERT INTO @tab values ('test')
INSERT INTO @tab values ('test')

SELECT [A] + '' FROM @tab
FOR XML PATH

添加一个 concat 以实现您想要的。

您的代码:

SELECT K.KeyWord + '' as Result 
FROM SearchKeyword K 
WHERE K.KeyWord LIKE @SearchWord+'%'   
FOR XML PATH 'Root', BINARY BASE64

如果可行,请告诉我。