2016-06-22 6 views
0

は、私は製品がコンマで区切り得意、ProductNamesBoughtを持っている結果セットを見たいSQL Serverでテキストフィールドを1つにピボットする方法は?

create table #example (
ProductID int, 
ProductName varchar(100), 
CustomerID int 
) 

insert #example values 
    (1,'Product 1',100), 
    (2,'Product 2',100), 
    (3,'Product 3', 101), 
    (3,'Product 3', 102) 

次の簡単な例を考えます。例えば

CustomerID ProductNamesBought 
========== ==================== 
100  Product 1, Product 2 
101  Product 3 
102  Product 3 

答えて

1
SELECT e.CustomerID, 
     STUFF((SELECT ','+ProductName FROM #example WHERE e.CustomerID = CustomerID FOR XML PATH('')),1,1,'') as ProductNamesBought 
FROM #example e 
GROUP BY e.CustomerID 

出力:

CustomerID ProductNamesBought 
100   Product 1,Product 2 
101   Product 3 
102   Product 3 
関連する問題