获取昨天的日期,如果周一获得周末范围

时间:2013-04-09 16:15:20

标签: vba ms-access

有没有办法让昨天约会。如果当前日期是星期一,我需要返回三个日期 - 周日,周六和周五。有没有办法在单个查询中完成此任务。我不太了解VBA,但如果这是解决的唯一方法,我愿意弄清楚。

Select * from [Purchase Order] where MyDate = 'Yesterdays date(s)'

1 个答案:

答案 0 :(得分:4)

WeekDay()函数会告诉您Date()函数返回的今天的日期是星期一。在IIf()表达式中使用该表达式,以便MyDate与今天不是星期一的昨天日期或MyDate星期一之前的3个日期相匹配。

SELECT *
FROM [Purchase Order] AS p
WHERE
    IIf(Weekday(Date()) = 2,
        p.MyDate BETWEEN DateAdd('d',-3,Date())
            AND DateAdd('d',-1,Date()),
        p.MyDate=DateAdd('d',-1,Date())
        );