-1

特定の評価を得た過去 2 年間に採用されたすべての従業員を引き出すコードを設定しています。YEAR(NOW()) 関数を調べていますが、設定に苦労しています。ユーザーがクエリにアクセスした時点からデータを取得する必要があるため、NOW 関数を使用する必要があります。評価は毎年 2 月に完了します (つまり、2013 年の評価は 2014 年 2 月に完了します)。

YEAR(NOW()-12) but it

このように今日実行すると、2013 年がまだ完了していないため、2012 年と 2011 年の評価を引き戻すことになります。

私のコード全体は次のようになります。

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;

しかし、エラーが発生し続けます: INCONSISTENT DATATYPES: EXPECTED DATE GOT NUMBER (#932)

4

2 に答える 2

3

あなたが持っているものは機能しません。現在の日付/時刻から 12 日を引いて、年に変換します。したがって、2013年が返されます。

dataadd() 関数を使用します。以下は、クエリ デザイナーでの空のクエリです。

今日の日付から 12 か月を引いた日付を求めています。以下の出力を参照してください。

ここに画像の説明を入力

于 2013-09-09T19:49:57.663 に答える