MySql CASE语句未按预期工作

时间:2017-04-27 07:02:08

标签: mysql

我有一个MySql语句无法正常工作。我已经尝试并寻找解决方案,因为我认为我可能做错了但是我无法自己解决这个问题所以我决定从全球各地的伟大思想家那里得到一些帮助。这是我的MySql声明。

select
    truncate(sum((cvdm.TimeOut - cvdm.TimeIn)/60),2) as HoursWorked,
    emp.EmployeeNo,
    cvdm.VisitDate,
    concat(emp.FName, ' ',emp.LName) as EmployeeName, 
    case truncate(sum((cvdm.TimeOut - cvdm.TimeIn)/60),2) when truncate(sum((cvdm.TimeOut - cvdm.TimeIn)/60),2) > 130 then 1 else 0 end as FTStatus
from employees emp 
inner join visit_details cvdm on cvdm.EmployeeNo = 
emp.employeeno
where cvdm.VisitDate between StartDate_ and EndDate_
and emp.ClientID=AgencyId_
group by emp.employeeno;

现在我对case语句有疑问。对于HoursWorked(第一列),查询返回134,但是当我将相同的HoursWorked置于CASE(参考查询返回的最后一列)时,它总是返回0,在这种特殊情况下它应该返回1.我是什么在这做错了?任何帮助将不胜感激。

0 个答案:

没有答案