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

SQL按客户统计消费总天数 解决sum(date)不存在报错问题

错误原因

SUM() 是数值求和函数,仅支持作用于数值类型字段,无法直接对日期类型执行计算,所以会触发sum(date)不存在的报错。同时你的需求是统计客户的消费天数,属于计数类需求,本身就不应该使用求和函数实现。

正确实现SQL

你需要先按customer_id分组拆分每个客户的数据,再用COUNT(DISTINCT)统计每个客户名下去重后的消费日期数量(同一天多次消费仅计数1次),写法如下:

SELECT
  customer_id,
  COUNT(DISTINCT order_date) AS total_consume_days
FROM sales
GROUP BY customer_id;

样例数据返回结果

对应你提供的测试数据,查询结果如下:

customer_idtotal_consume_days
A4
B6
C2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 18:27:05