gpt4 book ai didi

sql - 如何选择过去 X 个月在一周的 X 天插入的结果?

转载 作者:搜寻专家 更新时间:2023-10-30 19:43:42 24 4
gpt4 key购买 nike

我必须收集表格中过去 3 个月的星期一插入的所有行。我将如何编写 WHERE 子句日期以获得这些结果?

WHERE Date = (wk, DATEDIFF(wk,0,GETDATE()), 0)

这将选择本周星期一的所有内容,但我遇到的问题是选择三个月前的一系列星期一。

谢谢!

所以这是我最终得到的 WHERE 子句,对我来说效果很好......

where Datestamp > dateadd(month, -3, getdate())
AND datepart(weekday, Datestamp) = datepart(weekday, DATEADD(wk, DATEDIFF(wk,0,GETDATE()), 0))

我只更改了我们输入从星期一开始的星期几的部分我添加了这个...

DATEADD(wk, DATEDIFF(wk,0,GETDATE()), 0)

最佳答案

WHERE Date > dateadd(month, -3, getdate())
AND datepart(weekday, Date) = 1

这是两个不同的条件;无需将它们压缩成一个。

注意:在您的机器上运行测试以查看您为 datepart(weekday, @AMondayDate) 获得的值。在某些系统上,星期一是 1,在其他系统上是 2;这取决于 DATEFIRST configuration .

更新:

感谢ErikE对于克服工作日数字问题的巧妙技巧:

WHERE Date > dateadd(month, -3, getdate())
AND datepart(weekday, Date) = datepart(weekday, '2012-11-25')

关于sql - 如何选择过去 X 个月在一周的 X 天插入的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13502423/

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