码迷,mamicode.com
首页 > 数据库 > 详细

sql server 多行合并一行

时间:2014-12-08 10:40:15      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:io   ar   使用   sp   for   on   bs   cti   as   

1. 使用函数

go

CREATE FUNCTION dbo.fn_Sumtype(@type varchar(50))
RETURNS varchar(8000)
AS
BEGIN
DECLARE @values varchar(8000)
SET @values = ‘‘
SELECT @values = @values + ‘,‘ + PRODUCT_TYPE FROM [DataCopy2] WHERE CUSTOMERFULLNAME=@type
RETURN STUFF(@values, 1, 1, ‘‘)
END
GO

 

测试如下:

 


SELECT CUSTOMERFULLNAME, data = dbo.fn_Sumtype(CUSTOMERFULLNAME) FROM [DataCopy2] GROUP BY CUSTOMERFULLNAME

 

2. 使用xml 技术

SELECT CUSTOMERFULLNAME, data=STUFF((SELECT ‘,‘+PRODUCT_TYPE FROM [DataCopy2] t WHERE CUSTOMERFULLNAME=t1.CUSTOMERFULLNAME FOR XML PATH(‘‘)), 1, 1, ‘‘)
FROM [DataCopy2] t1
GROUP BY CUSTOMERFULLNAME

 

sql server 多行合并一行

标签:io   ar   使用   sp   for   on   bs   cti   as   

原文地址:http://www.cnblogs.com/rongfengliang/p/4150417.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!