我们正在针对目标衡量实际值。我们有一天(24小时)的总体目标,但我们需要计算任何给定时间的目标来衡量我们目前的进展情况。
显然,我们需要将总体目标与给定时间进行比例分配;因此,如果是正午,那么渐进目标是每日目标的一半,而在早上6点,渐进目标将是每日目标的四分之一 - 依此类推。
在SQL中执行此操作的最有效方法是什么?有一个明显的解决方案,但它不是很漂亮 - 我希望能够在一次操作中将DATETIME
转换为总的毫秒数。
答案 0 :(得分:5)
要获得完成的一天的百分比,您可以这样做:
select datediff(MILLISECOND, CONVERT(date, getdate()), GETDATE())/864000.0
你真的需要毫秒吗?