我在将分钟转换为小数时遇到了一些问题,即使我在SO处查看过其他回复。
select cast(datediff(minute, min(start_time), min(complete_time)) as decimal (10,10))
from TRACKED_OBJECT_HISTORY TOH1
where TOH1.op_name = 'Assembly'
结果返回,但我总是得到像2.00,4.00,5.00这样的结果而不是像1.86,3.99,5.03这样的数字。我想这是事后的转换(我也试过转换功能无济于事)。有什么想法吗?
答案 0 :(得分:7)
Datediff返回一个整数,而不是浮点数或数字。
为了得到你想要的东西,也许你应该在几秒钟内完成差异然后除以:
select cast(datediff(second, min(start_time), min(complete_time))/60.0 as decimal (10,10))
from TRACKED_OBJECT_HISTORY TOH1 where TOH1.op_name = 'Assembly'