我有一个问题,我一直在打我的头。无论一周中的哪一天,我都需要两天前的日期。例如,如果今天是星期二,我需要之前的星期一。我正在使用MS访问来执行此操作。获取日期2星期一前
0
A
回答
2
我想你可以使用提到的Weekday()函数@ mwolfe02,并将它与DateAdd()函数结合使用。在这些示例语句中,我还使用了一个IIf()函数来告诉DateAdd从开始日期中减去多少天。
? DateAdd("d", IIf(Weekday(#2011/11/20#, 2) = 1, _
-14, -6 - Weekday(#2011/11/20#, 2)), #2011/11/20#)
11/7/2011
? DateAdd("d", IIf(Weekday(#2011/11/21#, 2) = 1, _
-14, -6 - Weekday(#2011/11/21#, 2)), #2011/11/21#)
11/7/2011
? DateAdd("d", IIf(Weekday(#2011/11/22#, 2) = 1, _
-14, -6 - Weekday(#2011/11/22#, 2)), #2011/11/22#)
11/14/2011
请参阅访问'这些功能的在线帮助主题。
您没有指出您是想从VBA代码还是查询中执行此操作。而且你没有告诉我们日期值来自哪里。所以我不能给出更具体的东西。
编辑:要使用当前的日期做一个查询,试试这样:
SELECT
DateAdd("d", IIf(Weekday(Date(), 2) = 1, -14, -6 - Weekday(Date(), 2)), Date())
AS TwoMondaysAgo;
如果从Access应用程序会话中运行查询,您可以创建一个少通过构建一个VBA用户定义的函数来执行DateAdd计算,然后在您的查询中调用udf来查看令人讨厌的查询。
-1
我不是Access语法过于familar但一些alongs的
DATEADD("d", -((datepart("w",now)-2)+14), now)
的2是指行至周一是一周的第二天。
0
使用Weekday()
函数。其余的只是数学。
0
下仅使用时间的功能,这使得它更便携,可能意味着它的性能会更好过:
SELECT DATEADD('D', ((
DATEDIFF('D', #1990-01-09 00:00:00#, your_datetime_col) \ 7) * 7) - 7,
#1990-01-08 00:00:00#)
FROM YourTable;
这里的VBA“证据”,以配合HansUp的(除非我正在使用国际日期格式; )
? FORMAT$(DATEADD("D", _
((DATEDIFF("D", #1990-01-09 00:00:00#, #2011-11-20 00:00:00#) \ 7) * 7) - 7, _
#1990-01-08 00:00:00#), "yyyy-mm-dd")
2011-11-07
? FORMAT$(DATEADD("D", _
((DATEDIFF("D", #1990-01-09 00:00:00#, #2011-11-21 00:00:00#) \ 7) * 7) - 7, _
#1990-01-08 00:00:00#), "yyyy-mm-dd")
2011-11-07
? FORMAT$(DATEADD("D", _
((DATEDIFF("D", #1990-01-09 00:00:00#, #2011-11-22 00:00:00#) \ 7) * 7) - 7, _
#1990-01-08 00:00:00#), "yyyy-mm-dd")
2011-11-14
相关问题
- 1. 获取从给定日期星期一到星期五的星期日期
- 2. 获取基于给定日期的星期一至星期日
- 3. Informatica - 获取星期一的日期号
- 4. 从当前日期获取星期几,并指定星期的第一天
- 5. 从日期字段获取星期一星期Hive
- 6. 获取指定日期的星期日
- 7. 在SQL中使用今天的日期获取星期日期(星期一)
- 8. 根据星期编号获取日期
- 9. 指定日期的获取星期数
- 10. 使用星期几获取日期
- 11. 使用星期几获取日期
- 12. 查找当前星期的开始日期(星期一)
- 13. 从Python的日期列获取周开始日期(星期日)
- 14. 如何使用星期编号获取一周的星期一日期
- 15. 以星期,星期数,月和年获取日期
- 16. 获取指定日期之前的星期的开始和结束日期
- 17. 在给定日期(bash)后获取下一个星期日
- 18. PHP星期一星期一和星期六日期问题
- 19. 获取当前日期和前一天
- 20. 如何获取当年第一个星期一的日期(php)?
- 21. 获取本周第一个星期一的日期?
- 22. Django的日期字段得到一个星期就像星期日星期一
- 23. 获取从当前星期一开始的2个营业日的日期范围
- 24. 日当周美国天数(星期一= 1,星期二= 2)
- 25. 使用月份日历获取选定星期的星期六日期值
- 26. T-sql日期星期一
- 27. 本周星期一日期
- 28. 如何获得SAS中的前一个星期一(前一周的星期一)?
- 29. C#获取下一个第N个星期五日期从今天的日期
- 30. 查找上个星期日的日期从当前日期
对不起,日期值将来自当前日期,它将用于查询 – Luke101
哦,男人..它的工作。谢谢你的工作。我在访问时总是不喜欢,不知道从哪里开始。 – Luke101