在 Microsoft 工作 13 周 sql
Rolling 13 weeks in Microsoft sql
我正在尝试获取连续 13 周的数据,但不确定如何正确执行。
我试过这个:
DATEDIFF(week,Completed_date,GETDATE()) < 13
但是我有 14 周而不是 13 周,我认为这可能会让我得到不正确的结果,因为它可以追溯到 91 天,所以它可能无法到达一周的开始..
带周的 DATEDIFF 使用日历周。如果您希望这是一组滚动的天数而不是与日历周对齐,则可能需要使用天。此外,如果您使用 GETDATE(),请确保您考虑了一天中的时间。
下面这篇文章也能帮到你,尤其是备注,
Specifying SET DATEFIRST has no effect on DATEDIFF. DATEDIFF always
uses Sunday as the first day of the week to ensure the function is
deterministic.
我正在尝试获取连续 13 周的数据,但不确定如何正确执行。
我试过这个:
DATEDIFF(week,Completed_date,GETDATE()) < 13
但是我有 14 周而不是 13 周,我认为这可能会让我得到不正确的结果,因为它可以追溯到 91 天,所以它可能无法到达一周的开始..
带周的 DATEDIFF 使用日历周。如果您希望这是一组滚动的天数而不是与日历周对齐,则可能需要使用天。此外,如果您使用 GETDATE(),请确保您考虑了一天中的时间。
下面这篇文章也能帮到你,尤其是备注,
Specifying SET DATEFIRST has no effect on DATEDIFF. DATEDIFF always uses Sunday as the first day of the week to ensure the function is deterministic.