我有一个数据库,可以收集工人的工作时间报告, 我被要求为特定部门创建警报 上一个报告日期大于90天的有效合同
我有ReportDate列,其中包含条目,并且我不确定如何在不使用GETDATE函数的情况下将其区别开
如上所述,我尝试了getdate函数,该函数在这种情况下显然无效
(不是代码,但需要查询) 选择不同的(newcontractid) 最后一个ReportDate大于90天的地方...
答案 0 :(得分:0)
您似乎想要这样的东西:
select contractid
from t
where t.status = 'active' -- whatever this is
group by contractid
having max(reportdate) < current_date - interval '90 day';
这使用标准的SQL语法。在MySQL中,日期函数为:
having max(reportdate) < current_date - interval 90 day;
在SQL Server中:
having max(reportdate) < dateadd(day, -90, getdate())