【发布时间】:2012-08-06 09:40:33
【问题描述】:
假设我有一张名字姓氏性别国籍等的人的表格。
我要统计男性人数和女性人数。
我可以做两条 SQL:
SELECT COUNT(id) FROM people WHERE sex = 'male'
SELECT COUNT(id) FROM people WHERE sex = 'female'
但是我可以做一个查询:
SELECT * FROM people
然后数一下“男”和“女”出现的次数? 循环遍历整个结果集是唯一的方法吗?
编辑:我问这个的原因是因为性能。我将有多个 JOIN 并且表大小超过 2k 行。而且,我不会只统计性别,还会统计国籍、年龄、语言等很多栏目。
我只是想确保我选择的方法将使用最少的资源。我不希望查询和 PHP 脚本需要很长时间才能运行。
谢谢。
【问题讨论】: