一个字段rvalue有三个值 想用一个sql语句同时输出三个count值我只会写一个的:select COUNT(*) from room where rvalue = '入住'
2 回答
杨__羊羊
TA贡献1943条经验 获得超7个赞
方法一
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
TA贡献1859条经验 获得超6个赞
如果用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
添加回答
举报
0/150
提交
取消