我可以用分号将多行划分为一列吗?

时间:2016-02-26 09:53:07

标签: sql

我可以创建一个只显示一列的SQL查询,但在这些列中是所有带分号的行。 我的例子: 从table1中选择名称 - >示出了

[Name]
Peter
Doug
Mustafa
Emre

现在我想要一个向我显示的查询:

[Name]
Peter;Doug;Mustafa;Emre
你能帮助我吗?

格尔茨

2 个答案:

答案 0 :(得分:0)

create table #user (username varchar(25))

insert into #user (username) values ('Peter')
insert into #user (username) values ('Doug')
insert into #user (username) values ('Mustafa')
insert into #user (username) values ('Emre')

declare @tmp varchar(250)
SET @tmp = ''
select @tmp = @tmp + username + ';' from #user

select SUBSTRING(@tmp, 0, LEN(@tmp))

根据需要进行修改,但它可以正常工作

答案 1 :(得分:0)

谢谢大家的帮助。这是我的结果:

SELECT Name = STUFF((
SELECT ';' + Name
FROM Table1
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '')

格尔茨