首页 > 解决方案 > 在那个查询中,我想要 inprogress=0 记录如何做到这一点

问题描述

SELECT   access,   count(*) 
from   visitors 
where   type of visitor = 'complaint'   
  and access = 'open'   
   or access = 'inprogress'   
   or access = 'onhold'   
   or access = 'closed'   
   and apartmentid = 72 
group by   access 
order by   access desc

标签: sql

解决方案


您可以删除inprogress过滤器或进行聚合:

SELECT v.access, SUM(CASE WHEN v.access = 'inprogress' THEN 0 ELSE 1 END) AS Cnt
FROM visitors v
WHERE v.typeofvisitor = 'complaint' AND
      v.access IN ('complaint', 'open', 'inprogress', 'onhold', 'closed') AND
      v.apartmentid = 72
GROUP BY v.access
ORDER BY v.access;

OR可以简写为IN.


推荐阅读