函数作用
用到group by时, 能将相同的行组合起来。
函数语法group_concat( [DISTINCT] 要连接的字段 [Order BY 排序字段 ASC/DESC] [Separator "分隔符"] )
例子比如我们有一个商品规格表,我想在后台看到不同种类的商品都有哪些规格,id代表商品种类,spec代表商品规格
商品规格表 id | spec 1 | 黄色 1 | 绿色 3 | 100g 3 | 60g 4 | 38m
那么我们就可以这么写
以id分组,把spec字段的值打印在一行,按照spec倒序排列
select id,group_concat(spec order by spec) from 规格表 group by id; |1 | 黄色,绿色| |3 | 60g,100g| |4 | 38m|
默认是以逗号分隔,我们也可以改成分号
select id,group_concat(spec separator ";") from 规格表 group by id; |1 | 黄色;绿色| |3 | 60g;100g| |4 | 38m|补充:
还可以用distinct去掉重复的数值,也可以多个字段拼接
感受:这个函数不复杂,只是感觉应该会经常用到,以前总是习惯筛选之后用程序拼接,其实有些多余了.
使用场景视具体情况而定,这个都不是绝对的。希望对大家有帮助。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/17547.html
阅读 3431·2023-04-26 02:48
阅读 1441·2021-10-11 10:57
阅读 2461·2021-09-23 11:35
阅读 1176·2021-09-06 15:02
阅读 3278·2019-08-30 15:54
阅读 1592·2019-08-30 15:44
阅读 860·2019-08-30 15:44
阅读 968·2019-08-30 12:52