2013-04-25 55 views
0
集团

SELECT语句中通过连接两个表中的结果如下 -SQL - 选择加入和

Col 1 | Col 2 | Col 3 | Col 4 
---------------------------------- 
sample11| sample12 | sample13 | sample14 
sample11| sample12 | sample23 | sample24 
sample11| sample12 | sample23 | sample34 
sample11| sample12 | sample43 | sample44 

如何组并连接在第4栏的数值为2行和第3行(根据不同的值在栏3),使得结果是以下 -

Col 1 | Col 2 | Col 3 | Col 4 
---------------------------------- 
sample11| sample12 | sample13 | sample14 
sample11| sample12 | sample23 | sample24, sample34 
sample11| sample12 | sample43 | sample44 

回答

2

如果正在使用Oracle 11g

SELECT "Col 1", "Col 2", "Col 3", 
     LISTAGG("Col 4", ',') WITHIN GROUP (ORDER BY "Col 1") AS "Col 4" 
FROM TableName 
GROUP BY "Col 1", "Col 2", "Col 3"