附加两列的记录

时间:2017-02-01 18:29:20

标签: sql-server

如何在单行中追加两个字段的记录。

假设我们在一个包含n个记录的表中有两列。我需要在一行中附加逗号分隔的每一行。

Col1
Abs
Abd
Abf
Abg


Col2
10
15
20
0

期望的输出

O/pcol
Abs:10 ;Abd:15 ;Abf:20 ;Abg:0

我希望这会有所帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用"累加器"变量以连接所有值:

declare @testTable table (Col1 nvarchar(50),Col2 nvarchar(50))
declare @accumulator nvarchar(max)

insert into @testTable
          select 'Abs',10
union all select 'Abd',15
union all select 'Abf',20
union all select 'Abg',0

set @accumulator =''

select @accumulator = @accumulator + Col1 + ':' + Col2 + ' ;' from @testTable

select @accumulator

此代码段的输出应为:

  

Abs:10; Abd:15; Abf:20; Abg:0;