2011-12-08 80 views
1

我有一個看起來數據,如合併第2列的每個第一列在MySQL

ABC  1234,2134,6754,7658 
XYZ  4324,5643,6754,9832,5478,0987 
DEF  2938,4637,1093,6734,5632 
GHI  3274 
ABC  9983 
DEF  1211,4782 

我想是合併每個ID的第2列第1列

ABC  1234,2134,6754,7658,9983 
XYZ  4324,5643,6754,9832,5478,0987 
DEF  2938,4637,1093,6734,5632,1211,4782 
GHI  3274 

我是什麼思考是以編程方式迭代第一列中的每個ID(排序)。繼續爲每個ID,直到它不匹配下一行。這可以用SQL查詢來完成。我怎麼去解決它?我有大約10萬行。謝謝

回答

1

你可以使用GROUP_CONCAT aggregate function

例子:

如果你作爲例子提供的表名爲table1與列col1col2然後查詢所需達到的結果將是這樣的:

SELECT col1, GROUP_CONCAT(col2 SEPARATOR ',') FROM table1 GROUP BY col1; 
相關問題