怎么在sql server内得到精确的时间间隔?
sql server有一个datediff函数,但是这个函数不仅返回时间间隔,还返回经过的时间边界
比如
datediff(hh,"2012-10-1 08:59:00","2012-10-1 09:01:00")
这两个时间的真实时间间隔肯定是没有1小时的,但是这个函数会返回1,因为经过了它经过了小时和小时之间的时间边界09:00:00,那我要怎么才能获得精确的和时间间隔呢
------解决方案--------------------精确度越粗略,得到的值越不准确,降低粒度是目前唯一的办法,本身你也不是想精确多少个小时,如果你用HH但是想精确的话,那估计结果是0,也不是你想要的结果。
------解决方案--------------------
你说对了,一般在处理这个时间差的时候,都会用更小的单位来计算,然后再进行转换,比如间隔为2分钟:
SELECT datediff(second,'2012-10-01 08:59:00','2012-10-01 09:01:00') /60
/*
2
*/