MySQL合并多行数据并且判断某个字段是否包含某个字符

在mysql脚本中使用聚合函数合并一行后,判断某一个字段的值是否包含某个值

// GROUP_CONCAT
SELECT
	i.id,
i.name,
i.id_card_no,
i.mobile,
i.student_no,
i.employee_name,
//SUM函数:俩字段合并并且俩值相加
SUM(c.contract_amount) AS contractAmount,
SUM(t.paid_fee) AS paidFee,
//IF(LOCATE('2',GROUP_CONCAT(t.fee_status))>0,2,1),先将int类型字段合并成字符串后,再用LOCATE()判断是否包含
//字符2,如果包含就大于0,该字段就取值为2,不包含就小于0,取值为1
IF(LOCATE('2',GROUP_CONCAT(t.fee_status))>0,2,1) AS fee_status,
//GROUP_CONCAT(),将某一张表中的字段合并成字符串
GROUP_CONCAT(c.business_type) AS businessType
FROM
	t_b_training_student_info i
	LEFT JOIN t_b_training_student_training t ON t.student_id=i.id AND t.`enable`=1
	LEFT JOIN t_b_training_contract_info c ON c.student_id=i.id and c.`enable`=1
	where i.id='7bd70c43220b4baca9ca856bef2b149a' AND i.enabled=1
	GROUP BY
		i.id,i.name,
i.id_card_no,
i.mobile,
i.student_no,
i.employee_name
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值