0

我正在尝试编写一个函数来减去几个日期,然后将它们相除,然后加 1 然后 * 100 以获得总体完成百分比。

((SYSDATETIME() - proj.proj_scheduledDate)/(proj.proj_dueDate - proj.proj_scheduledDate + 1)) * 100 as 'percent done

返回

除法运算符的操作数数据类型日期时间无效。

我需要做什么才能让这个查询工作?谢谢!

4

2 回答 2

0

我是否可以建议使用DATEDIFF ()dd一天datepart——您可以轻松获得完成天数的百分比——或者datepart如果需要,可以使用更小的值。

返回指定开始日期和结束日期之间跨越的指定日期部分边界的计数(有符号整数)。

于 2013-10-22T14:08:52.943 回答
0
SELECT 
    FLOOR((DATEDIFF(NOW(), proj.proj_scheduledDate) / DATEDIFF(proj.proj_dueDate, proj.proj_scheduledDate)) * 100)
FROM
    foo;
于 2013-10-22T14:32:58.777 回答