公司考勤要公开,要写个小页面,用到前台计算机共享的Access文件,要求页面能直接判断员工的上班下班时间是否和标准,
我在一条语句里把东西都搞定,结果,发现奇怪问题,同样的函数IIf,对下班的那部分可以实现,对上班那部分就出问题,实在Ghost
SELECT
B.TP_B, B.M_T, B.A_T,
IIf(FORMAT(B.A_T, 'hh:nn:ss') > #18:00:00#, '正常', '早退') AS TYPE_A,
IIF(FORMAT(B.M_T, 'hh:nn:ss') > #09:05:00#, '迟到', '正常') AS TYPE_M
FROM
(SELECT
MAX(TP_A) AS A_T, MIN(TP_A) AS M_T, TP_B
FROM (
SELECT
FORMAT(CHECKINOUT.CHECKTIME, 'hh:nn:ss') AS TP_A,
FORMAT(CHECKINOUT.CHECKTIME, 'yyyy-MM-dd') AS TP_B,
USERINFO.NAME
FROM
(CHECKINOUT INNER JOIN USERINFO ON CHECKINOUT.USERID = USERINFO.USERID)
WHERE
(USERINFO.USERID = 7) AND (CHECKINOUT.CHECKTIME > #4/1/2008#)) A
GROUP BY TP_B) AS B
没想到,数据显示能早退的判断正常,但是迟到的判断出问题,很是郁闷,我先后把这部分单独提出组成语句、调换位置,都无法实现正常反应,郁闷...