我有一个SQL查询来显示stage_time表中stage_times的所有总和.但是我只需要为所有3个阶段输入值的汽车使用stage_times的总和,因此在这种情况下car_no 3被排除在列表之外;
这是一个带有我的示例代码http://sqlfiddle.com/#!2/1675d/78的sqlfiddle
SELECT d.*, SUM(Stage_Time) AS total
FROM Driver d, Stage_Times st
WHERE st.Driver_Id = d.Driver_Id AND st.Event_Id = 1
AND st.Stage_Id <= 3
GROUP BY d.Driver_Id
ORDER BY total;
Run Code Online (Sandbox Code Playgroud)
在此先感谢您的帮助
您可以添加一个Having子句
having count(distinct st.Stage_id) = 3
Run Code Online (Sandbox Code Playgroud)
看到更新的sqlfiddle
(顺便说一句,我改变了你的查询以使用join,这是一个更好的方法).