mySQL计数功能

时间:2012-09-10 20:24:05

标签: mysql

我正在尝试计算“作业”表中所有具有“已完成”状态的记录,不包括任何“修复它”或“空缺”作业类型的作业。这就是我正在使用的,但我不确定这是否给了我正确的结果:

SELECT id, client_id, COUNT(*) AS count FROM jobs 
WHERE jobType != 'fix-it' AND jobType != 'vacancy' AND status = 'completed' 
GROUP by jobs.client_id

然后我查看结果,看看我是否在给定的客户端下有两个或更多已完成的作业。

这看起来是否正确?

2 个答案:

答案 0 :(得分:2)

您可以使用单个NOT IN子句替换这两种作业类型的东西,以使事情更加清晰......

WHERE jobType NOT IN ('fix-it', 'vacancy') AND ...

否则看起来不错

答案 1 :(得分:0)

这适用于SQL Server,不确定MySql:

SELECT id, client_id, COUNT(*) AS count FROM jobs 
WHERE jobType != 'fix-it' AND jobType != 'vacancy' AND status = 'completed' 
GROUP by jobs.client_id
HAVING Count(*) > 1