计算 SQL 服务器汇总中两个日期之间的周数

Calc number of weeks between two dates in SQL Server Round Up

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

这意味着即使两个日期之间有 1 天,它也被计为 "Week"。

有没有改进版的datediff(ww, Date1, Date2)允许参数让我们选择是否舍入up/down?

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

提前致谢。

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
declare @dt1 datetime = '2016-01-01'
declare @dt2 datetime = '2016-01-07'
select ceiling(convert(float, abs(datediff(day, @dt1, @dt2))) / 7)