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

如何用SQL按日分组统计销售总额:单价×销量扣除折扣后汇总

按日汇总销售总额SQL调整方案

原有语句的错误点

  • 折扣计算逻辑错误:原公式实际计算结果完全偏离实际折扣额,单条记录的正确折后金额应为 item_sale_price * item_sale_qty * (1 - discount_percentage / 100)
  • 缺少聚合函数:使用GROUP BY按日期分组时,没有搭配SUM()对单日所有明细的销售额做汇总,只会返回分组内第一条记录的计算结果
  • 分组逻辑存在隐患:仅用DAY(sale_date)分组会导致跨月查询时,不同月份的相同日期被合并统计,应该用DATE(sale_date)提取完整日期分组

调整后正确语句

SELECT 
    DATE(sale_date) AS sale_date,
    SUM(item_sale_price * item_sale_qty * (1 - discount_percentage / 100)) AS total_per_day
FROM sales_items 
WHERE sale_date BETWEEN '$startdate' AND '$enddate' 
GROUP BY DATE(sale_date)

样例数据计算验证

按上述逻辑计算你提供的样例数据,结果如下:

  • 2021-06-01:250000 * 5 * (1 - 10/100) = 1125000
  • 2021-06-02:(100000 * 1 * (1 - 0/100)) + (25000 * 2 * (1 - 5/100)) = 147500

内容的提问来源于stack exchange,提问作者Andres Carvajal

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 14:48:01