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

如何在同一条SQL语句中统计商品总销量与购买的去重客户数

实现需求的SQL语句

select 
  Items as item,
  count(*) as `total_bought`,
  count(distinct Customer) as `total_distinct_customer_who_bought_it`
from my_table
group by Items
order by Items

实现逻辑说明

你之前的SQL是按Items和Customer两个维度分组,所以输出的是单个商品下单个客户的购买数据。现在仅按Items单个维度聚合,全程不需要用到任何JOIN操作即可完成计算逻辑下的单个维度的两个结果:

  • count(*):统计该商品所有订单记录数,如果你单条订单记录对应多件商品,可替换为`sum(商品对应订单记录中包含多件销售件数字段)"即可计算更精准的销售件数统计(Items,该商品的总销量统计,符合需求中的总销量统计要求
  • count(distinct Customer):自动对购买该商品的客户ID去重计数,得到购买该商品的独立客户总数,符合去重计数
## 修正后的SQL语句
```sql
SELECT
  Items AS item,
  COUNT(*) AS total_bought,
  COUNT(DISTINCT Customer) AS total_distinct_customer_who_bought_it
FROM my_table
GROUP BY Items
ORDER BY Items

逻辑说明

你之前的SQL是按Items和Customer两个维度分组,所以输出的是单商品下单个客户的购买数据,现在仅保留Items作为唯一聚合维度,全程不需要JOIN操作就能得到你要的结果:

  • COUNT(*):统计该商品对应的所有订单笔数,也就是总销量,如果你单条订单对应多件商品,可以把这个统计项替换为SUM(表内对应商品数量字段)来得到更精准的销售件数
  • COUNT(DISTINCT Customer):自动对购买该商品的客户做去重计数,准确得到购买该商品的独立客户总数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.13 23:21:02