gpt4 book ai didi

sql-server - 查找本周的开始日(星期一)

转载 作者:行者123 更新时间:2023-12-02 09:10:14 28 4
gpt4 key购买 nike

寻找一个或多个 SQL 查询来确定本周的开始日(星期一)。

示例:如果今天是 -> 那么本周的开始是

Sat Oct 09, 2010 -> Start of the week is Monday Oct 04, 2010
Sun Oct 10, 2010 -> Start of the week is Monday Oct 04, 2010
Mon Oct 11, 2010 -> Start of the week is Monday Oct 11, 2010
Tue Oct 12, 2010 -> Start of the week is Monday Oct 11, 2010

我在 Google 和 StackOverflow 上看到了很多“解决方案”。看起来像:

SET @pInputDate = CONVERT(VARCHAR(10), @pInputDate, 111)
SELECT DATEADD(DD, 1 - DATEPART(DW, @pInputDate), @pInputDate)

这会失败,因为:2010 年 10 月 10 日星期日 -> 2010 年 10 月 11 日星期一开始一周(这是不正确的)。

最佳答案

尝试使用DATEFIRST明确设置一周中的哪一天被视为“第一天”。

set DATEFIRST 1  --Monday
select DATEADD(DD, 1 - DATEPART(DW, @pInputDate), @pInputDate)

这将返回 InputDate 所在周的星期一。

关于sql-server - 查找本周的开始日(星期一),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3936844/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com