【发布时间】:2017-01-24 14:35:54
【问题描述】:
我有以下两个约会示例
第二次约会从晚上 7 点到午夜。然而,持续时间恢复为 19 小时。这是因为没有存储日期,它计算的是前一天晚上 7 点和午夜之间的差异。
约会只能安排到午夜时分,所以有些SQL会在选择即将到来的午夜而不是前一天晚上的午夜时增加一天的时间吗?这应该只在时间是午夜时有效,否则它工作正常。
当前 SQL
select mr.AssignmentId, ABS(DATEDIFF(MINUTE, mr.AssignmentStart, mr.AssignmentEnd) /60.0) as Total
from master_rota mr
【问题讨论】:
-
为什么应用程序没有将结束时间设置为正确的日期时间?或者这些 TIME 列是否被格式化为屏幕截图中的日期时间列?
-
您知道午夜 (00:00:00) 是一天的开始,而不是一天的结束,对吧?
标签: sql sql-server sql-server-2008 time duration