2017-08-29 32 views
-1

我有一個MySQL的問題,也許標題是有點混亂,但在這裏列有云:MySQL的加入兩個表來產生與逗號分隔值

我有兩個表

TABLE A   TABLE B 
+-----+--------+ +-----+--------+ 
| id | NumCol | | id | NumCol | 
+-----+--------+ +-----+--------+ 
| 101 | 123 | | 101 |  | 
| 101 | 124 | +-----+--------+ 
+-----+--------+ 

現在我倒是想加入這兩項上的ID,所以我得到這樣

+-----+--------+ 
| id | NumCol | 
+-----+--------+ 
| 101 | 123,124| 
+-----+--------+ 

任何輸出知道的一種方便的方法來做到這一點?

+2

爲什麼'tableB'是必需的? –

+0

爲什麼你甚至需要表B?所有的數據似乎來自表A. – Mureinik

+0

表B也有一些不同的列,我沒有寫,所以我不會複雜的東西,我不介意,如果你可以改變表A來獲得結果! – 12344343243

回答

1

嘗試此查詢

SELECT tb.id,GROUP_CONCAT(ta.NumCol) AS NumCol FROM tableB AS tb 
JOIN tableA AS ta ON ta.id=tb.id 
GROUP BY tb.id 
+0

謝謝,我得到這一個工作 – 12344343243

+0

我也謝謝lalabhai幫助 –

3

你嘗試:

SELECT tableA.id, GROUP_CONCAT(tableA.NumCol) as NumCol 
FROM tableA, tableB 
WHERE tableA.id = tableB.id 
GROUP BY tableA.id 
+0

你shud建議現代explizit連接語法不是舊的版本與在哪裏 – Jens

+0

是的這是對的@Jens我只是想使它可讀的所有 –

+0

我認爲moder連接語法可以作爲舊樣式讀取 – Jens