在MySQL中,可以使用GROUP_CONCAT
函數來實現行轉列操作。具體步驟如下:
假設有如下表student
:
+----+-------+------------+
| id | name | subjects |
+----+-------+------------+
| 1 | Alice | Math |
| 1 | Alice | English |
| 2 | Bob | Math |
| 2 | Bob | Science |
+----+-------+------------+
如果要將subjects
列中的數據進行行轉列操作,可以使用以下SQL語句:
SELECT id, name, GROUP_CONCAT(subjects) AS subjects_list
FROM student
GROUP BY id, name;
執行以上SQL語句后,將得到以下結果:
+----+-------+---------------------+
| id | name | subjects_list |
+----+-------+---------------------+
| 1 | Alice | Math, English |
| 2 | Bob | Math, Science |
+----+-------+---------------------+
通過GROUP_CONCAT
函數將每個學生的科目拼接成一個字符串,并將其作為新的列subjects_list
返回,實現了行轉列操作。