我正在处理的查询之前已经有效。我不知道自从我的同事离开后继承它的确切日期。每次运行查询时,我都会在条件表达式中得到数据类型不匹配。"
SELECT Personnel.Badge, Personnel.First_Name, Personnel.Last_Name, Training.Course, DateAdd("m",[Cert_Duration],[Latest_Course_Date]) AS Cert_Expiration, Personnel.Reports_To
FROM Training INNER JOIN (Personnel INNER JOIN qry_Training_Log_Latest_Course ON Personnel.Badge = qry_Training_Log_Latest_Course.Personnel) ON Training.Training_ID = qry_Training_Log_Latest_Course.Course
WHERE (((DateAdd("m",[Cert_Duration],[Latest_Course_Date]))<DateAdd("m",6,Date())) AND ((Training.Cert_Duration) Is Not Null));
看来这条线
我将不胜感激。
答案 0 :(得分:3)
此查询还会触发“条件表达式中的数据类型不匹配。”
SELECT DateAdd("m", Null, Date());
因此,您的错误可能是由此表达式中的空[Cert_Duration]
值引起的......
DateAdd("m",[Cert_Duration],[Latest_Course_Date])
您需要将查询修改为......
[Cert_Duration]
之前,排除空值为DateAdd()
的行[Cert_Duration]
值。