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