我有一个存储过程来计算两个日期之间的工作日数
select
casekey, LoginName, casestartdatedate,
dbo.CalcWorkDaysBetween(casestartdatedate, GETDATE()) AS 'WD'
from
Car_case with (nolock)
where
dbo.CalcWorkDaysBetween(casestartdatedate, GETDATE()) <= DATEADD(dd,DATEDIFF(dd, 0, GETDATE()), -60)
and CaseClosedDateDate is null
order by
CaseStartDateDate asc
在我选择的声明部分中,我想显示案件开始日期和今天的日期之间的工作日数。这部分很好。但我只想回复“工作日”的情况。是60天或更长时间 - 我在这部分查询中遇到了问题。请参阅上面的代码。不太确定为什么它不起作用。它返回的结果不到60天,让我意识到我在某个地方出了问题。
任何帮助将不胜感激!
答案 0 :(得分:1)
如果我理解正确,您只需要修复where
条件:
select casekey, LoginName, casestartdatedate,
dbo.CalcWorkDaysBetween(casestartdatedate, GETDATE()) AS WD
from Car_case cc with (nolock)
where dbo.CalcWorkDaysBetween(casestartdatedate, GETDATE()) >= 60 and
CaseClosedDateDate is null
order by CaseStartDateDate asc;
注意:在您的版本中,您将函数的结果(可能是整数)与日期进行比较。