在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参数来修改分隔符。
亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>
相关推荐:oracle根据逗号一行变多行怎么实现