已过去的一天的百分比

时间:2012-08-29 02:42:49

标签: sql sql-server sql-server-2008

我们正在针对目标衡量实际值。我们有一天(24小时)的总体目标,但我们需要计算任何给定时间的目标来衡量我们目前的进展情况。

显然,我们需要将总体目标与给定时间进行比例分配;因此,如果是正午,那么渐进目标是每日目标的一半,而在早上6点,渐进目标将是每日目标的四分之一 - 依此类推。

在SQL中执行此操作的最有效方法是什么?有一个明显的解决方案,但它不是很漂亮 - 我希望能够在一次操作中将DATETIME转换为总的毫秒数。

1 个答案:

答案 0 :(得分:5)

要获得完成的一天的百分比,您可以这样做:

select datediff(MILLISECOND, CONVERT(date, getdate()), GETDATE())/864000.0

你真的需要毫秒吗?