私は Access のコーディングに関してはあまり熟練していません。むしろ、SQL を使用する方が好きです。特定の分野で一部の従業員を引っ張るためにコードを設定しました。しかし、1 つのテーブルには従業員の全履歴が含まれているため、REC EFF STT DT フィールドを取得しました。これは、従業員が開始した可能性のある各ポジションを示しています。最新の(彼らの現在の)仕事だけが必要です。MAX DATE を含む WHERE ステートメントにサブクエリが必要であることはわかっていますが、正しくフォーマットする方法がわかりません。
SELECT O896IA_VEMPPRSA.EMP_NA, O896IA_VEMPPRSA.SYS_EMP_ID_NR,
([O896IA_VEMPPRSA].[REG_NR]) & ([O896IA_VEMPPRSA].[DIS_NR]) AS RRDD,
O867IA_VJOBHST.BUS_UNT_REF_NR, O867IA_VJOBHST.REC_EFF_STT_DT
FROM O867IA_VJOBHST
INNER JOIN O896IA_VEMPPRSA
ON O867IA_VJOBHST.SYS_EMP_ID_NR = O896IA_VEMPPRSA.SYS_EMP_ID_NR
WHERE (((([O896IA_VEMPPRSA].[REG_NR]) & ([O896IA_VEMPPRSA].[DIS_NR]))
IN ("2010","2108","2029","2230","2580")) AND
((O867IA_VJOBHST.BUS_UNT_REF_NR) IN
("ISBOP","ISCIM","ISGAP","ISCRA","ISCTP","ISOPS","ISSCS","ISSSP","ISTTG")))
GROUP BY O896IA_VEMPPRSA.EMP_NA, O896IA_VEMPPRSA.SYS_EMP_ID_NR,
([O896IA_VEMPPRSA].[REG_NR]) & ([O896IA_VEMPPRSA].[DIS_NR]),
O867IA_VJOBHST.BUS_UNT_REF_NR, O867IA_VJOBHST.REC_EFF_STT_DT;
単純に MAX DATE を使用することはできません。MAX DATE には、彼らが経験した各ジョブのレコードが含まれるためです。彼らの最新の日付が必要なだけです。