mysql多行變多列怎么實(shí)現(xiàn)

小億
166
2024-01-29 10:12:29
欄目: 云計(jì)算

在MySQL中,可以使用GROUP_CONCAT函數(shù)將多行數(shù)據(jù)合并為一行,并將其拆分為多列。

例如,有以下數(shù)據(jù)表:

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

可以使用GROUP_CONCAT函數(shù)將Name列合并為一列,并將Country列合并為另一列:

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

輸出結(jié)果為:

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

注意,GROUP_CONCAT默認(rèn)使用逗號(hào)作為分隔符,可以通過指定SEPARATOR參數(shù)來修改分隔符。

0