我正在设置一个代码来拉动所有在过去 2 年内雇用并获得一定评级的员工。我一直在研究 YEAR(NOW()) 函数,但我很难设置它。我需要使用 NOW 函数,因为我需要它从用户访问查询时提取数据。评分在接下来的 2 月完成(即 2013 年的评分将在 2014 年 2 月完成),因此需要阅读类似
YEAR(NOW()-12) but it
这样,如果我今天运行它,它将返回并拉出 2012 年和 2011 年的收视率,因为 2013 年尚未完成。
我的整个代码如下所示:
SELECT dbo_v_TMS_QPR_01_Score.TMS_ID, dbo_v_TMS_QPR_01_Score.QPR_Year, dbo_v_TMS_QPR_01_Score.Final_QPR_Score
FROM O867IA_VJOBHST INNER JOIN dbo_v_TMS_QPR_01_Score ON O867IA_VJOBHST.SYS_EMP_ID_NR = dbo_v_TMS_QPR_01_Score.GEMSID
WHERE (((dbo_v_TMS_QPR_01_Score.Final_QPR_Score)>="1.25") AND ((O867IA_VJOBHST.EMP_ACN_TYP_CD)="HIR") AND ((O867IA_VJOBHST.REC_EFF_STT_DT)=Year(Now()-12)))
GROUP BY dbo_v_TMS_QPR_01_Score.TMS_ID, dbo_v_TMS_QPR_01_Score.QPR_Year, dbo_v_TMS_QPR_01_Score.Final_QPR_Score;
但我不断收到错误消息:不一致的数据类型:预期的日期得到编号(#932)