温馨提示×

mysql多行变多列怎么实现

小亿
165
2024-01-29 10:12:29
栏目: 云计算

在MySQL中,可以使用GROUP_CONCAT函数将多行数据合并为一行,并将其拆分为多列。

例如,有以下数据表:

+----+-------+---------+
| ID | Name  | Country |
+----+-------+---------+
| 1  | John  | USA     |
| 2  | Alice | UK      |
| 3  | Tom   | Japan   |
+----+-------+---------+

可以使用GROUP_CONCAT函数将Name列合并为一列,并将Country列合并为另一列:

SELECT GROUP_CONCAT(Name) AS Names, GROUP_CONCAT(Country) AS Countries
FROM table_name;

输出结果为:

+-----------------+---------------------+
| Names           | Countries           |
+-----------------+---------------------+
| John,Alice,Tom  | USA,UK,Japan        |
+-----------------+---------------------+

注意,GROUP_CONCAT默认使用逗号作为分隔符,可以通过指定SEPARATOR参数来修改分隔符。

0