mysql - MySQL with CASE WHEN 具有多个值
问题描述
我正在尝试显示我的严重级别的总和。
我的桌子
client dateadded problem level
abc 2019-02-02 12345a 1
abc 2019-02-02 12345b 1
abc 2019-02-02 12345c 2
abc 2019-02-02 12345d 5
abc 2019-02-09 12345e 3
abc 2019-02-09 12345f 3
abc 2019-02-09 12345g 4
abc 2019-02-09 12345h 10
abc 2019-02-09 12345j 8
abc 2019-02-16 12345x 7
abc 2019-02-16 12345s 9
abc 2019-02-16 12345w 4
abc 2019-02-16 12345bs 5
这是我的代码
select client, dateadded,
count(case when level= '1,2,3' then 1 end) as Moderate,
count(case when level= '4,5,6,7' then 1 end) as Severe,
count(case when level= '8,9,10' then 1 end) as Critical
from table1 where client = 'abc'
group by client, dateadded
我试过了
count(case when level= '1' and '2' and '3' then 1 end) as Moderate,
我想要的输出
dateadded Moderate severe critical
2019-02-02 3 1 0
2019-02-09 2 1 2
2019-02-16 0 3 2
谢谢!娜塔莉
解决方案
CASE WHEN level IN(1,2,3) THEN 1 END ...是要走的路..谢谢大家!
推荐阅读
- azure-ad-b2c - Azure AD B2C 注销问题
- ruby-on-rails-6 - 使用 Stripe 创建目的地费用 - ArgumentError - 不支持的参数类型:1(整数)
- devexpress - 如何将数据连接到 devexpress blazor 报告?
- continuous-integration - 如何使用 git hub 操作将新构建发送到存储库?
- c++ - Shell 切断 arglist 中的一个元素
- firebase - 您如何使用 Firebase 的云功能读取另一个用户的 userInfo?
- sql - SQL 导出到平面文件比作业中 SSIS 中的相同导出运行得更快
- html - 将图像移动到侧边栏底部
- reactjs - 如何在这里使用 async/await 而不是 Promise
- javascript - 正则表达式无法识别车牌的输入值