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

SnowSQL中结合Groupby使用Count Distinct窗口函数的实现问题

问题原因

你的SQL报错主要有两点:

  1. GROUP BY 仅指定了用户字段,但窗口函数用到的市场字段既不在分组维度中,也没有被聚合函数包裹,不符合GROUP BY的语法要求
  2. 你混合了普通聚合和窗口聚合逻辑,GROUP BY执行后已经丢失了全量购买ID的明细数据,窗口函数无法再统计整个市场的唯一购买ID总数

解决方案(无任何子查询,符合SnowSQL语法规范)

SELECT DISTINCT
  用户,
  COUNT(DISTINCT Purchase_ID) OVER (PARTITION BY 用户) AS 购买次数,
  COUNT(DISTINCT Purchase_ID) OVER (PARTITION BY 市场) AS 市场唯一购买总数
FROM 你的表名

执行逻辑说明

  • 所有统计逻辑都通过窗口函数直接在原始明细行上计算,不需要提前聚合
  • 最终通过DISTINCT去重,每个用户仅保留一行统计结果,和你预期的输出格式完全一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 10:27:02