同一天同一用户所购置商品并排排列

同一天同一用户所购买商品并排排列
原表
ID 下载用户 商品 日期
1 b 辛 2014/12/14
2 b 干 2014/12/14
3 c 己 2014/12/14
4 c 为 2014/12/14
5 c 甲 2014/12/14
6 d 戊 2014/12/14
7 e 壬 2014/12/14
8 b 为 2014/12/15
9 c 为 2014/12/15
10 c 戊 2014/12/15
11 e 乙 2014/12/15
想得到结果
下载用户 商品1 商品2 商品3 日期
b 辛 干 2014/12/14
c 己 为 甲 2014/12/14
d 戊 2014/12/14
e 壬 2014/12/14
b 为 2014/12/15
c 为 戊 2014/12/15
e 乙 2014/12/15
sql语句能实现吗
------解决思路----------------------
没有人回呢


if object_id('tempdb..#t')is not null drop table #t
go
CREATE TABLE #t(ID INT,[下载用户] CHAR(2),[商品] CHAR(10),[日期] DATETIME,[商品2] CHAR(10),)
INSERT INTO #t(ID ,[下载用户] ,[商品] ,[日期] )
SELECT 1,'b','辛','2014-12-14' union all
SELECT 2,'b','干','2014-12-14' union all
SELECT 3,'c','己','2014-12-14' union all
SELECT 4,'c','为','2014-12-14' union all
SELECT 5,'c','甲','2014-12-14' union all
SELECT 6,'d','戊','2014-12-14' union all
SELECT 7,'e','壬','2014-12-14' union all
SELECT 8,'b','为','2014-12-15' union all
SELECT 9,'c','为','2014-12-15' union all
SELECT 10,'c','戊','2014-12-15' union all
SELECT 11,'e','乙','2014-12-15'

update #t set [商品2]=[商品]
go
---方法一
declare @name varchar(500) 
select @name = isnull(@name + ',','') + rtrim([商品])
from #t
GROUP BY [商品]
exec ('select * from (select [下载用户],[日期],[商品],[商品2] from #t ) a 
pivot (max([商品]) for [商品2] in (' + @name + ')) b') 
---方法二
SELECT B.[下载用户],B.[日期],LEFT(UserList,LEN(UserList)-1) as [商品]
FROM (SELECT [下载用户],[日期],
(SELECT rtrim([商品])+',' FROM #t WHERE [下载用户]=A.[下载用户] and [日期]=A.[日期] FOR XML PATH('')) AS UserList  
FROM #t A 
GROUP BY [下载用户],[日期]) B 





解决完毕,结贴给分