如何编写SQL查询获取item_id与sub_item_id的唯一计数?
统计唯一item_id与全表唯一sub_item_id的SQL方案
要直接得到两个目标统计值——唯一item_id的总数、全表中唯一sub_item_id的总数,不需要分组查询,直接在全表上使用去重计数函数即可:
SELECT COUNT(DISTINCT item_id) AS unique_item_count, COUNT(DISTINCT sub_item_id) AS unique_subitem_count FROM my_table;
针对示例数据,这个查询会输出一行结果:3(唯一item_id数量)和9(全表唯一sub_item_id数量),完全符合预期。
你之前的查询问题在于使用了GROUP BY item_id,它会按每个item_id分组,统计单个item下的唯一sub_item数量,所以会输出多行冗余数据,而非全局统计结果。
内容的提问来源于stack exchange,提问作者curious_brain
相关产品推荐
相关产品推荐

