0

我需要检查是否有任何工作时间段在日期时间之间,并计算工作时间总和超过 8 小时之间的时间。

样本数据:

1. Work time: 07:00 - 17:00 and datetime for checking 06:00-22:00
Answer: 2 hour 
2. Work time: 13:00 - 23:00 and datetime for checking 06:00-22:00
Answer: 1 hour (only 1 hour is grater 8 hours and between 06:00-22:00 )
3. Work time: 19:00 - 05:00 and datetime for checking 22:00-06:00
Answer: 2 hour (only 2 hour is grater 8 hours and between 22:00-06:00 )

有任何想法吗?

4

1 回答 1

0

试试这个:T-SQL DateDiff - 按“整小时前”分区,而不是“时间分钟变成 00 以来”

基本上,DATEDIFF(HOUR, endTime, startTime)。然后,从 8 中减去您的结果以获得差异(如果它们“低于”时间,则差异将为负数)。

于 2013-05-17T11:07:00.233 回答