如何用SQL COUNT查询统计相同邮政编码的记录数量?
如何用SQL统计每个邮政编码的记录数?
这是个非常常见的分组统计需求,用SQL的基础聚合语法就能轻松搞定。我直接给你核心代码,再拆解下每个部分的作用:
首先假设你的表名叫user_info(如果不是的话,替换成你实际的表名就行),执行下面的SQL语句:
SELECT post_code, COUNT(*) AS Count FROM user_info GROUP BY post_code;
代码各部分说明:
SELECT post_code:指定我们要输出的邮政编码字段,作为分组的标识COUNT(*):这是SQL的聚合函数,用来统计每个分组里的总记录数;AS Count是给这个统计结果起个直观的别名,和你预期的输出列名对应上FROM user_info:这里一定要替换成你实际的数据库表名称GROUP BY post_code:这是实现需求的关键!它会把所有post_code值相同的记录归为一组,这样COUNT(*)就能针对每个独立的组计算数量
执行后你会得到和预期完全一致的结果:
| Count |
|---|
| 3 |
| 1 |
如果想让结果按数量从多到少排序,可以额外加个ORDER BY子句,修改后的代码如下:
SELECT post_code, COUNT(*) AS Count FROM user_info GROUP BY post_code ORDER BY Count DESC;
这样结果就会优先显示记录数量多的邮政编码啦~
内容的提问来源于stack exchange,提问作者Slatneer
相关产品推荐
相关产品推荐

