注意事项:
1.GROUP_CONCAT() 默认的结果长度受到 group_concat_max_len 系统变量的限制,其默认值是 1024。如果你预期会有大量的数据被归并,可能需要调整这个值。
2.如果你在一个没有 GROUP BY 语句和其他聚合函数的查询中仅使用 GROUP_CONCAT(),MySQL 可能会将整个结果集视为一个大的组,并尝试将所有行的相关列值连接成一个单一的字符串。这通常不是预期的举动,因为它可能会导致天生一个非常长的字符串,特别是当查询结果集很大时。
2.1.2 GROUP BY 子句
GROUP BY 子句:SELECT中使用GROUP BY 子句可以对指定列进行分组查询。然后,对于每个组,它会计算聚合函数的值。如果查询中没有指定聚合函数,但使用了 GROUP BY,则每个组将只返回一行,通常是分组列的值(尽管这取决于选择的列和数据库的具体实现)。
语法:
select 列名(分组的列名),聚合函数(列名)...from 表名 group by 列名(分组的列名),列名(分组的列名);