2016-10-14 15 views
-1

我有一個MySQL表源數據看起來像這樣:如何爲行數據包含名稱和值的數據創建mySQL摘要表?

 
+----+------+-------+ 
| id | name | value | 
+----+------+-------+ 
| 1 | a | 10 | 
| 1 | b | 5 | 
| 2 | a | 20 | 
| 2 | b | 5 | 
| 3 | a | 30 | 
| 3 | b | 5 | 
+----+------+-------+ 

我需要最後的結果看起來像這樣:

 
+----+----+----+ 
| id | a | b | 
+----+----+----+ 
| 1 | 10 | 5 | 
| 2 | 20 | 5 | 
| 3 | 30 | 5 | 
+----+----+----+ 

應該是一個簡單的任務爲鄉親在MySQL的經驗。有什麼建議麼?

+0

Google for'PIVOT'。 –

回答

0

正如@Juan提到的那樣,你可以在Google左右。但是,以防萬一你無法弄清楚看看下面的查詢。

SELECT id, 
     MAX(CASE WHEN name = 'a' THEN value END) AS a, 
     MAX(CASE WHEN name = 'b' THEN value END) AS b 
FROM yourTable 
GROUP BY id 
相關問題