You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL关联两表按No分组求和并合并客户字段的实现需求

MySQL按订单号分组合并客户并求和金额

表结构与数据

order表(注意order是MySQL保留字,使用时需用反引号包裹)

NoCustomer
1A
1c
2b

customer_amount表

CustomerAmount
A1
A2
C7
B5

需求

通过Customer字段关联两张表,按No分组:

  • 将同组的Customer合并为逗号分隔的字符串
  • 对关联的Amount字段求和

解决方案SQL

SELECT
    o.`No`,
    GROUP_CONCAT(o.Customer) AS Customers,
    SUM(ca.Amount) AS Amount
FROM `order` o
LEFT JOIN customer_amount ca 
    ON UPPER(o.Customer) = UPPER(ca.Customer)
GROUP BY o.`No`;

关键说明

  1. GROUP_CONCAT():自动将分组内的Customer值用逗号拼接,默认分隔符为逗号,无需额外指定。
  2. UPPER():统一转换为大写,解决Customer字段大小写不匹配的问题(如原数据中的c和C),确保关联逻辑正确。
  3. SUM():对分组内所有关联的Amount值进行求和计算。

执行结果

NoCustomersAmount
1A,c10
2b5

内容的提问来源于stack exchange,提问作者Yahia Baiba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 21:52:33