我使用下面的sql来计算第一个查询中的持续时间。
CDate(TimeSerial(Val([EndTime])\100,Val([EndTime]) Mod 100,0)-TimeSerial(Val([StartTime])\100,Val([StartTime]) Mod 100,0))) AS Duration
下面是好的
现在,我想在另一个查询中进一步计算一周内不同课程的总时间。类似sum(iif(lesson=“math”,duration,0))
但由于是时候了,数据类型sqlserver不允许我使用sum函数。
我尝试了以下sql。
sum(hour(duration) + minute(duration)) AS Total_time
但这不是我所期望的,因为我想保留一些标准的原始格式。
有什么好办法吗?谢谢您。
2条答案
按热度按时间ctehm74n1#
首先,只需获取数字持续时间:
您可以将其求和并转换为日期时间:
例子:
数据:
查询:
结果:
t30tvxxf2#
我建议只接受以秒或十进制小时为单位的总时间: