如何修改SQL查询以仅显示国家总数大于15的区域?
修改后的SQL查询语句
要实现仅返回国家总数大于15的区域,你需要在分组后使用HAVING子句过滤聚合结果——WHERE子句无法直接对聚合函数(比如COUNT(*))进行筛选。修改后的完整查询如下:
SELECT Region AS "Region Name", COUNT(*) AS "Total Countries" FROM country GROUP BY Region HAVING COUNT(*) > 15 ORDER BY Region DESC;
关键说明
HAVING子句专门用于分组后的结果过滤,它会在GROUP BY完成分组计算后,筛选出满足COUNT(*) > 15的分组。- 如果误用
WHERE COUNT(*) > 15会报错,因为WHERE是在分组前对原始行数据进行过滤,此时聚合计算还未执行。
内容的提问来源于stack exchange,提问作者SosaD
相关产品推荐
相关产品推荐

