【发布时间】:2021-04-11 03:26:26
【问题描述】:
我正在编写一个 SQL 查询来查找与今天日期相同的去年业务工作日期。
在这个查询中它应该获取:-
例如如果今天是 2021 年 1 月 5 日,并且是一年中第二周的第二天。所以我需要找到上一年第二周第二天的确切日期。所以应该是 2020 年 1 月 7 日。
有了这个,我需要 2020 年 1 月 7 日那一周的业务工作日期(即不包括周六和周日) 根据示例,这将是 2020-Jan-06 到 2020-Jan-10。
所以我需要 2020 年 1 月 6 日至 1 月 10 日之间的报告。
我正在尝试使用此代码查找与今天日期相同的去年日期(2021 年 1 月 5 日,即第二周的第二天)
select Convert(date, (DATEADD(year, -1, getdate()+2))) ;
【问题讨论】:
-
请解释一下 2021-01-05 是“一年中第二周的第二天”。
-
嗨@GordonLinoff,根据业务场景,一周将从星期一开始,因此 2021 年 1 月 5 日将是一年中第二周的第二天。
-
您之前的问题有关于日历的建议 - 使用其中之一。您只需添加您需要知道 2021 年 1 月 7 日与 2020 年 1 月 5 日相关的任何列
标签: sql sql-server