我有这样的查询:
Include
结果集如下:
Where
如您所见,只有最后一列有所不同。我希望此查询返回一行,并将最后一列中的所有项目列为一个字段。没有结合,我尝试了合并,但是我无法真正使其发挥作用。我还能尝试什么?
答案 0 :(得分:0)
在SQL Server中执行此操作的方法是使用STUFF函数。为了演示如何使用它,下面给出一个简化的示例。这使用了自我联接,但是很容易更改。
declare @test1 table
(
fkfield int,
datafield varchar(50)
)
insert into @test1 VALUES
(1,'ABC'),
(1,'DEF'),
(2,'xyz'),
(2,'mno'),
(2,'pqr')
SELECT DISTINCT
fkfield,
Stuff((SELECT ', ' + datafield
FROM @test1 t2
WHERE t2.fkfield = t1.fkfield
FOR XML PATH('')), 1, 2, '') ConCatData
FROM @test1 t1
结果如下:
1 ABC, DEF
2 xyz, mno, pqr
HTH