将多个记录合并为一个

时间:2013-07-26 17:37:09

标签: sql-server tsql

我正在使用以下查询:

DECLARE @Code varchar(6)

SELECT a.Code, a.Description, a.Time, b.id
FROM TableA a
LEFT OUTER JOIN TableB B ON a.id = b.id
WHERE a.Code = @Code

我遇到的问题是它因为外连接而返回多条记录,如下所示:

Code    Description     Time    B.id
5038    sample desc     4       108
5038    sample desc     4       632
5038    sample desc     4       633
5038    sample desc     4       197
5038    sample desc     4       503

将这些组合成一个记录的最佳方式是什么,比如b.id的分隔列表?

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

我认为这篇文章也可以帮助你Combine Multiple Rows Into One Column with CSV output

答案 2 :(得分:0)

您可以使用here

找到此方法
USE AdventureWorks
GO

DECLARE @listStr VARCHAR(MAX)
SELECT @listStr = COALESCE(@listStr+',' ,'') + Name
FROM Production.Product
SELECT @listStr
GO