MySQL使用Group_concat合并一对多字段

本文介绍了如何在MySQL中使用GROUP_CONCAT函数来解决一对多的数据展示问题。通过一个实际的管理系统业务场景,展示了如何将规则表中的多个时间段合并到一个字段,并以分隔符隔开,简化了从数据库查询和封装数据的过程。
摘要由CSDN通过智能技术生成

1.实际业务中有些常见的一对多规则关系,比如商品等,在这里我遇到一个实际的业务,用查询的话需要从数据库捞数据再封装太麻烦。正好想起来MySQL有这么个函数可是实现一对多的显示

结合实际业务-管理系统相关业务。参考文章:https://blog.csdn.net/u011944141/article/details/78902678

规则表通过主键id绑定时间段,即一个规则可能有多个时间,我们通过sql把多个时间段合并到一个字段里并隔开

SQL可以这么写:

  SELECT  dt.rule_id,group_concat(dt.time_range) as timeRange, r.rule_name,r.inspect_user_cnt
    FROM vms.vms_inspect_rule_det dt ,vms_inspect_rule r
    WHERE dt.rule_id=r.id
    and r.delete_flag=false
    group by rule_id
    ORDER BY r.created_time DESC

 

数据库查询结果如下显示:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值