如下,使用mysql怎么查询同一个字段的三个count值?

一个字段rvalue有三个值 想用一个sql语句同时输出三个count值
我只会写一个的:select COUNT(*) from room where rvalue = '入住'

海绵宝宝撒
浏览 182回答 2
2回答

杨__羊羊

方法一select count(rvalue = '入住' or null)        ,count(rvalue = '退房' or null) -- 内容是瞎掰的,原理是一样的       ,count(rvalue = '续住' or null) -- 内容是瞎掰的,原理是一样的from room方法二select sum(if(rvalue = '入住',1,0))       ,sum(if(rvalue = '退房',1,0)) -- 内容是瞎掰的,原理是一样的       ,sum(if(rvalue = '续住',1,0)) -- 内容是瞎掰的,原理是一样的from room

慕丝7291255

如果用count的话,三个字段的count值会是一样。如果有按条件统计可以考虑用case和sum来配合使用。比如select sum(case gender when 'female' then 1 else 0 end) as Women, sum(case gender when 'male' then 1 else 0 end) as Men from users
打开App,查看更多内容
随时随地看视频慕课网APP