在1中优化许多SQL请求

时间:2013-11-07 19:14:29

标签: mysql sql

我有一个小问题,我有3个SQL请求,我想知道是否可以在1个请求中优化它们。

我的3 sql请求:

SELECT FAI, COUNT( FAI ) AS deferred_count
FROM  `email_errors` 
WHERE STATUS =1
GROUP BY FAI
-------------------------------------------
SELECT FAI, COUNT( FAI ) AS sent_count
FROM  `email_errors` 
WHERE STATUS =0
GROUP BY FAI
-------------------------------------------
SELECT FAI, COUNT( FAI ) AS Bounced_count
FROM  `email_errors` 
WHERE STATUS =2
GROUP BY FAI

所以,如果可能,我会尝试获得一个包含4列结果的输出表FAI|deferred_count|sent_count|bounced_count

我不知道是否可以根据请求通过“FAI”进行加入?

1 个答案:

答案 0 :(得分:4)

SELECT FAI, 
       sum( status = 0 ) AS send_count,
       sum( status = 1 ) AS deferred_count,
       sum( status = 2 ) AS Bounced_count
FROM  `email_errors` 
GROUP BY FAI