0

我想在 Access 2007 Query Ex 中添加两个或更多的工作时间数字,我有三个记录,例如

1:30
5:18
10:52

我想在 Access 查询中获取这些记录的总和。我使用SUM函数,但它返回错误值。

4

3 回答 3

0

如果您使用的是 sql,请尝试此操作,

create table #temp(Tm time)
insert into #temp values ( CAST('1:30' as time))
insert into #temp values (CAST('5:18' as time))

insert into #temp values (CAST('10:52' as time))
select * from #temp select cast(SUM(DateDiff(MINUTE,  CAST('0:00' as time), Tm))/60 as nvarchar(3)) + ':' + cast(SUM(DateDiff(MINUTE,  CAST('0:00' as time), Tm))%60 as varchar(2))  from #temp
于 2013-09-27T10:12:19.340 回答
0
format(sum([HOURSfield]),"hh:mm")
于 2013-09-27T10:12:19.370 回答
0

你没有得到错误的值,关键是这些值被格式化为日期,而不是小时/分钟。

我以前经历过这种情况,无法想出一种简单而干净的方式来仅使用 SQL 进行编码。

好消息是有人已经使用 VBA 解决了这个问题:

  1. 单击 Alt+F11 打开 Visual Basic for Applications
  2. 点击插入 -> 模块
  3. 粘贴您在此链接中找到的代码:https ://stackoverflow.com/a/30543581/8195723
  4. 在您的 SQL 代码中使用函数 FormatHourMinute(),因此它将呈现所需的格式。

FormatHourMinute(Sum(tbl_activites.working_hours)) As Wk_Hour

注意:此函数返回的值是字符串类型。你将无法

于 2019-04-06T21:47:35.150 回答