我在MS Access程序中有一个表trans_hist,其中时间以短日期格式“ HH:MM”存储,例如:
[![图片] [1]] [1]
现在,我创建了一个查询,该查询告诉每个用户的总时间(只需简单地将时间相加),但是如果总时间超过24小时,它将重置并从00:15重新开始(所有时间均以15分钟为间隔存储)
问题:对于Customer(UID)1,总时间应该是32:30,但是显示为8:30
当前结果:
UID Time_Elapsed 1 5:00 1 8:30 1 9:00 1 6:00 2 2:15 2 2:00 3 1:15 5 4:00 1 4:00
结果:
[![图片] [2]] [2]
Cust_UID Trans_Date Agen_Name Prog_Name Prime_Serv Prime_Serv_Time 10014 15年12月13日LAC RA BMC 01:00 10021 15年12月14日LAC RA AP 01:00 10022 15-Dec-15 LAC RA AP 01:00 10021 16-Dec-15 LAC RA SM 00:45 10020 15-Dec 15 LAC RA AP 01:00 10027 15-Dec 15 LAC RA DA 00:15 10028 18-Dec-15 LAC RA DA 00:15 10026 18-Dec-15 LAC RA DA 00 :15 10029 15-Dec-15 LAC RA DA 00:15 10030 18-Dec-15 LAC RA DA 00:15 10031 18-Dec-15 LAC RA DA 00:15 10023 19-Dec-15 LAC RA Clinical 02:00 10023 20-Dec-15 LAC RA临床01:30 10023 20-Dec-15 LAC RA临床02:00 10020 15-Dec-15 LAC RA SM 00:15 10023 21-Dec-15 LAC RA SM 00:30 10022 22 –15年12月LAC RA临床00:30 10022 15年12月22日LAC RA IB 00:30 10021 15年12月22日LAC RA IB 00:30 10009 15-Dec 15 LAC RA IB 00:30 10019 23-Dec-15 LAC RA STM 00:45 10009 15-Dec 15 LAC RA Staff-In 00:30 10021 23-Dec 15 LAC RA Staff-In 00:30 10022 15年12月23日LAC RA职员-在00:30 10024 23-Dec-15 LAC RA职员-00:30 10033 23-Dec 15 LAC RA职员-00:30 10025 23-Dec- 15 LAC RA临床00:45 10035 2015年12月28日LAC OA CA 05:00 10040 2015年12月28日LAC OA CA 05:00 10039 2015年12月28日LAC OA CA 05:00 10038 LAC 12月15 OA CA 05:00 10042 15-Dec-15 LAC OA CA 05:00 10036 28-Dec-15 LAC OA CA 05:00 10037 28-Dec-15 LAC OA CA 05:00 10006 30-Dec-15 LAC Test 1 DA 01:45 10005 15-Dec-15 LAC测试2 DG 01:45 10015 30-Dec-15 LAC Test 2 IB 02:15 10015 30-Dec-15 LAC Test 4 DG 03:15 10019 30-Dec-15 LAC OA CA 15:30 10005 15年12月31日LAC OA CA 12:00
[数据] [3]
结果
Prog_Name Prime_Serv Total_Serv_Time OA CA 62:30 RA AP 3:0 RA BMC 1:0 RA临床7:45 RA DA 2:30 RA IB 2:30 RA人员-In 2:30 RA SM 2:30 RA STM 1:45测试1 DA 2:45测试2 DG 2:45测试2 IB 2:15测试4 DG 3:15
[结果] [4]
我希望此SQL查询有帮助:
SELECT T.UID, CSTR(total_hours + INT(total_min / 60)) + ":" + CSTR(total_min Mod 60) as result FROM (SELECT UID, SUM(HOUR(TH.time_elapsed)) AS total_hours, SUM(MINUTE(TH.time_elapsed)) AS total_min FROM trans_hist AS TH GROUP BY UID) AS T