mysql查询同一个字段的三个count值

发布于 2022-08-25 01:26:24 字数 103 浏览 22 评论 0

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

够运 2022-09-01 01:26:24
SELECT `rvalue`, COUNT( 1 ) FROM `room` GROUP BY `rvalue`
我一向站在原地 2022-09-01 01:26:24

如果用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

陌伤浅笑 2022-09-01 01:26:24

方法一

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
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文