mysql 列转行 怎么做
时间: 2023-08-03 14:04:12 浏览: 91
SQL 列转行
你可以使用MySQL的`GROUP_CONCAT`函数来实现列转行的效果。下面是一个示例:
假设有一个名为`students`的表,包含以下列:`id`、`name`、`subject`。每个学生可以有多个科目。
```
id | name | subject
-----|--------|--------
1 | John | Math
1 | John | Science
2 | Alice | English
2 | Alice | History
```
要将每个学生的科目转换为一个以逗号分隔的字符串,可以使用以下查询:
```sql
SELECT id, name, GROUP_CONCAT(subject) AS subjects
FROM students
GROUP BY id, name;
```
查询结果如下:
```
id | name | subjects
-----|--------|-----------------
1 | John | Math,Science
2 | Alice | English,History
```
这样,每个学生的科目就被转换成了一个字符串,并以逗号分隔。你可以根据实际需求进行适当调整。
阅读全文