分組使用 Group Concat
Group Concat 在 MySQL 中用於獲取每列多個結果的表示式的連線值。意思是,要為一列選擇許多行,例如 Name(1):Score(*)
| 名稱 | 得分了 |
|---|---|
| 亞當 | A + |
| 亞當 | 一個 - |
| 亞當 | B |
| 亞當 | C + |
| 法案 | D- |
| 約翰 | 一個 - |
SELECT Name, GROUP_CONCAT(Score ORDER BY Score desc SEPERATOR ' ') AS Grades
FROM Grade
GROUP BY Name
結果:
+------+------------+
| `Name` | Grades |
+------+------------+
| `Adam` | C+ B A- A+ |
| `Bill` | D- |
| `John` | A- |
+------+------------+