Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 获取2个星期六之前和上周五的日期_Sql Server_Date - Fatal编程技术网

Sql server 获取2个星期六之前和上周五的日期

Sql server 获取2个星期六之前和上周五的日期,sql-server,date,Sql Server,Date,如何获取2个星期五之前和2个星期六之前的日期(SQL Server 2012+) 比如说, 如果今天(10月12日星期一)运行,我的查询结果应该是10月3日星期六和10月9日星期五 如果在10月20日星期二跑步,我的日期应该是10月10日星期六和10月16日星期五 我在寻找一个答案,比如选择xyz getdate()…@Andresbi,您的示例说明了两个星期六之前和一个星期五之前 select dateadd(day, -08, dateadd(wk, datediff(wk, 0, ge

如何获取2个星期五之前和2个星期六之前的日期(SQL Server 2012+)

比如说,

  • 如果今天(10月12日星期一)运行,我的查询结果应该是10月3日星期六和10月9日星期五
  • 如果在10月20日星期二跑步,我的日期应该是10月10日星期六和10月16日星期五

我在寻找一个答案,比如
选择xyz getdate()…

@Andresbi,您的示例说明了两个星期六之前和一个星期五之前

select dateadd(day, -08, dateadd(wk, datediff(wk, 0, getdate()), 0))
select dateadd(day, -10, dateadd(wk, datediff(wk, 0, getdate()), 0))
我认为这段代码给出的结果是:

declare @dt datetime = '20201020'

select
    (
        /* Previous sunday */
        @dt - datepart(dw, @dt) + 1
        /* Previous saturday */
        - 1
        /* and the saturday before */
        - 7
    ),
    (
        /* Previous sunday */
        @dt - datepart(dw, @dt) + 1
        /* Previous friday */
        - 2
    )

10月9日和16日分别比10月12日和20日晚一个星期五。我给了你一个基于“1星期五前”的答案:-)是的,我修正了。谢谢你的回答,正是我所需要的。谢谢