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

SQL查询:按date列去重后求balance列总和的实现问题咨询

核心实现逻辑

你需要先对date和balance两列做联合去重,确保每组相同日期、相同余额的记录只保留1条,再对处理后的数据做求和计算。


方案1:输出符合条件的去重后明细记录

如果需要输出每个日期对应的去重后余额,语句如下:

select distinct date, balance
from `table`
where date between '起始日期' and '结束日期'

方案2:输出去重后所有余额的总求和结果

如果最终只需要一个全局求和数值,先通过子查询完成去重再聚合即可:

select sum(balance) as total_balance
from (
    select distinct date, balance
    from `table`
    where date between '起始日期' and '结束日期'
) as deduplicated_data

方案3:按日期维度输出每个日期的去重后余额总和

如果需要按日期分组,展示每个日期下所有去重后余额的求和结果,语句如下:

select date, sum(balance) as date_total_balance
from (
    select distinct date, balance
    from `table`
    where date between '起始日期' and '结束日期'
) as deduplicated_data
group by date

原语句问题说明

你之前直接按date分组后求和的逻辑,会把同一个日期下所有重复的balance值都累加多次,所以结果不符合预期。先做date+balance的联合去重步骤,可以保证每个唯一的(date, balance)组合仅参与一次计算。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 19:24:03