SQL Server Round Up中两个日期之间的Calc计算周数

时间:2016-05-02 22:47:27

标签: sql-server tsql datediff

如何计算四舍五入的两个日期之间的差异。

这意味着即使两个日期之间有1天,也会被计为“周”。

是否有datediff(ww, Date1, Date2)的改进版本,它允许参数,以便我们可以选择是否向上/向下舍入?

我想到的一种方法是计算两个日期之间的“天数”,将该数字除以7天,如果存在余数,则添加另一天。

提前致谢。

2 个答案:

答案 0 :(得分:1)

DECLARE @Date1 DATE, @Date2 DATE
SET @Date1 = '2016-04-24'
SET @Date2 = '2016-05-09'

SELECT FLOOR(DATEDIFF(dd,@Date1,@Date2))/7 +
    CASE DATEDIFF(dd,@Date1,@Date2)%7 WHEN 0 THEN 0 ELSE 1 END

答案 1 :(得分:1)

declare @dt1 datetime = '2016-01-01'
declare @dt2 datetime = '2016-01-07'
select ceiling(convert(float, abs(datediff(day, @dt1, @dt2))) / 7)