我有一个这样的数据库:
id name job payment
1 susan job1 no
2 rob job2 no
3 mike job3 yes
4 bob job2 yes
我需要按职位分组的人数,但前提是他们的薪水是可以的。
我做了这样的事情:
SELECT job, count(*) AS job FROM database GROUP BY job
结果是同一工作人员的人数,但我不知道如何检查另一栏(薪水),只有在“是”的情况下才可以计数。
希望你能帮助我,谢谢
最佳答案
您可以使用SUM
和条件:
SELECT job, SUM(payment = 'yes') AS job_cnt
FROM database
GROUP BY job;
DBFiddle Demo
输出:
┌───────┬─────────┐
│ job │ job_cnt │
├───────┼─────────┤
│ job1 │ 0 │
│ job2 │ 1 │
│ job3 │ 1 │
└───────┴─────────┘