【发布时间】:2017-01-09 22:46:03
【问题描述】:
到目前为止,我有这个工作查询,它对按序列号分组的检查次数求和,然后减去通过检查的总和 ('P')。如果通过的次数等于检查的次数,那么这被认为是整体通过,我们分配值为 1,否则为 0。
SELECT IF(SUM(CASE
WHEN i.inspect_result IN ('P','F') THEN 1
ELSE 0
END) -
SUM(CASE
WHEN i.inspect_result ='P' THEN 1
ELSE 0
END)=0,1,0) as Results
FROM inspections i WHERE workorder_id=5 GROUP BY serial_no
这会产生这样的结果
-------------
Results
-------------
1
0
1
1
0
0
1
1
1
0
etc.
我想做的是对结果求和。我尝试使用 SELECT SUM(existing query) 封装整个查询,但无法使其正常工作。
【问题讨论】: