一个查询中的多个条件的多个 COUNT() (MySQL)

新手上路,请多包涵

我有这些疑问:

 SELECT COUNT(*) FROM t_table WHERE color = 'YELLOW';
SELECT COUNT(*) FROM t_table WHERE color = 'BLUE';
SELECT COUNT(*) FROM t_table WHERE color = 'RED';

有没有办法在一个查询中获得这些结果?

原文由 TrtG 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 464
2 个回答
SELECT color, COUNT(*) FROM t_table GROUP BY color

原文由 eggyal 发布,翻译遵循 CC BY-SA 3.0 许可协议

有点晚了,但接受了 Sinte 的回答

[案例] 查询需求 - 具有多个计数的多个项目名称

select
t1.person_name

,(
    select count(person_id) from persons where sex='F' and person_id=t1.person_id
)as quantity_M

,(
    select count(person_id) from persons where sex_id='M' and person_id=t1.person_id
) as quantity_F

from persons as t1
group by t1.person_name
order by t1.person_name;

原文由 Billy Mainor Lemus 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏