如何使用MS SQL获得00:00(24:00)和23:00(23:00)之间的差异?
例:
(结束时间)00:00 - (开始时间)23:30 = 1,410。
但它应该是= 0.50
答案 0 :(得分:2)
DATEDIFF不保证在两个日期时间值之间传递完整数量的指定时间单位:
- 在8:55到11:00之间获得小时差异SELECT DATEDIFF(hh,'08:55','11:00'); - 返回3虽然时间间隔仅2小时5分钟 - 2011年9月30日至2011年11月2日之间的月份差异选择DATEDIFF(mm,'2011-09-30','2011-11-02' ) - 返回2虽然在日期之间仅过了1个月和2天
要获得在日期时间之间传递的全职单位数,您可以用较低的单位计算差异,然后除以适当的数字:
SELECT DATEDIFF(mi,'08:55','11:00')/ 60; - 现在返回2小时