如何在Snowflake中统计各ID所属的分组数量?
解决Snowflake中统计ID所属分组数量的问题
你的SQL报错主要有两个原因,直接修正这两点就能解决:
- 缺少GROUP BY子句:使用聚合函数
COUNT()时,必须指定按ID分组,否则数据库无法确定统计的维度。 Group是Snowflake保留字:直接写Group会触发语法错误,需要用双引号将其包裹,明确这是字段名。
正确SQL写法(统计所有关联记录的分组数)
SELECT ID, COUNT("Group") AS group_count FROM _Database GROUP BY ID;
如果需要统计唯一分组数(排除同一ID在同一分组的重复记录)
SELECT ID, COUNT(DISTINCT "Group") AS distinct_group_count FROM _Database GROUP BY ID;
补充说明
AS group_count是给统计结果列起别名,方便识别输出含义,可按需修改。- 双引号包裹保留字是Snowflake的标准写法,确保数据库将
"Group"识别为字段名而非关键字。
内容的提问来源于stack exchange,提问作者RK03
相关产品推荐
相关产品推荐

