在 Access 查询中使用日期作为条件的示例
Applies ToMicrosoft 365 专属 Access Access 2024 Access 2021 Access 2019 Access 2016

若要了解创建查询的相关信息,请参阅查询简介

下面是一些常见的日期条件示例,从简单日期筛选器到较复杂的日期范围的计算。 一些较复杂的示例使用 Access 日期函数提取日期的不同部分,以帮助您获得所需结果。

在条件中使用当前日期的示例

要包含满足以下条件的项目...

使用此条件

查询结果

包含今天的日期

Date()

返回日期为今天的项目。 如果当前日期为 2/2/2012,则您将看到日期字段设置为 2012 年 2 月 2 日的项目。

包含昨天的日期

Date()-1

返回日期为昨天的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年 2 月 1 日的项目。

包含明天的日期

Date() + 1

返回日期为明天的项目。 如果当前日期为 2012 年 2 月 2,则您将看到 2012 年 2 月 3 日的项目。

包含当前星期内的日期

DatePart("ww", [销售日期]) = DatePart("ww", Date()) and Year( [销售日期]) = Year(Date())

返回日期在当前星期内的项目。 在 Access 中一个星期从星期日开始到星期六结束。

包含上一星期内的日期

Year([销售日期])* 53 + DatePart("ww", [销售日期]) = Year(Date())* 53 + DatePart("ww", Date()) - 1

返回日期在上个星期内的项目。 在 Access 中一个星期从星期日开始到星期六结束。

包含下个星期内的日期

Year([销售日期])* 53+DatePart("ww", [销售日期]) = Year(Date())* 53+DatePart("ww", Date()) + 1

返回日期在下个星期的项目。 在 Access 中一个星期从星期日开始到星期六结束。

包含前 7 天内的日期

Between Date() and Date()-6

返回日期在前 7 天内的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年 1 月 24 日到 2012 年 2 月 2 日期间的项目。

包含当前月内的日期

Year([销售日期]) = Year(Now()) And Month([销售日期]) = Month(Now())

返回日期在当前月内的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年 2 月的项目。

包含上个月内的日期

Year([销售日期])* 12 + DatePart("m", [销售日期]) = Year(Date())* 12 + DatePart("m", Date()) - 1

返回日期在上个月内的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年 1 月的项目。

包含下个月内的日期

Year([销售日期])* 12 + DatePart("m", [销售日期]) = Year(Date())* 12 + DatePart("m", Date()) + 1

返回日期在下个月内的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年 3 月的项目。

包含前 30 天或 31 天内的日期

Between Date( ) And DateAdd("M", -1, Date( ))

返回一个月的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年 1 月 2 日到 2012 年 2 月 2 日期间的项目。

包含当前季度内的日期

Year([销售日期]) = Year(Now()) And DatePart("q", [SalesDate]) = DatePart("q", Now())

返回当前季度的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年第一季度的项目。

包含上个季度内的日期

Year([销售日期])*4+DatePart("q",[销售日期]) = Year(Date())*4+DatePart("q",Date())- 1

返回上个季度的项目。 如果当前日期为 2/2/2012,则您将看到 2011 年最后一个季度的项目。

包含下个季度内的日期

Year([销售日期])*4+DatePart("q",[销售日期]) = Year(Date())*4+DatePart("q",Date())+1

返回下个季度的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年第二季度的项目。

包含当年内的日期

Year([销售日期]) = Year(Date())

返回当年的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年的项目。

包含去年内的日期

Year([销售日期]) = Year(Date()) - 1

返回去年的项目。 如果当前日期为 2/2/2012,则您将看到 2011 年的项目。

包含去年内的日期

Year([销售日期]) = Year(Date()) + 1

返回日期为明年的项目。 如果当前日期为 2/2/2012,则您将看到 2013 年的项目。

包含介于 1 月 1 日和今天之间的日期(当年到今天为止的项目)

Year([销售日期]) = Year(Date()) and Month([销售日期]) <= Month(Date()) and Day([销售日期]) <= Day (Date())

返回日期介于当年 1 月 1 日到当天之间的项目。 如果当前日期为 2/2/2012,则您将看到 2012 年 1 月 1 日到 2012 年 2 月 2 日期间的项目。

包含发生在过去的日期

< Date()

返回日期为当天之前的项目。

包含发生在将来的日期

> Date()

返回日期为当天之后的项目。

使用当前日期以外的日期或日期范围的示例

要包含满足以下条件的项目...

使用此条件

查询结果

完全匹配某个日期,如 2/2/2012

#2/2/2012#

仅返回日期为 2012 年 2 月 2 日的项目。

不匹配某个日期,如 2/2/2012

Not #2/2/2012#

返回日期在 2012 年 2 月 2 日以外的项目。

包含某个特定日期(如 2/2/2012)之前的值

< #2/2/2012#

返回日期在 2012 年 2 月 2 日之前的项目。

要查看日期在 2012 年 2 月 2 日当天或之前的项目,请使用 <= 运算符代替 < 运算符。

包含某个特定日期(如 2/2/2012)之后的值

> #2/2/2012#

返回日期在 2012 年 2 月 2 日之后的项目。

要查看日期在 2012 年 2 月 2 日当天或之后的项目,请使用 >= 运算符代替 > 运算符。

包含某个日期范围之内的值(介于两个日期之间)

>#2/2/2012# and <#2/4/2012#

返回日期在 2012 年 2 月 2 日和 2012 年 2 月 4 日之间的项目。

注意: 您还可以使用 Between 运算符来筛选一个范围值(包括端点值)。 例如,在 #2/2/2012# 和 #2/4/2012# 等同于 >=#2/2/2012# 和 <=#2/4/2012#。

包含某个范围之外的日期

<#2/2/2012# or >#2/4/2012#

返回日期在 2012 年 2 月 2 日之前或在 2012 年 2 月 4 日之后的项目。

包含两个日期之一,如 2/2/2012 或 2/3/2012

#2/2/2012# or #2/3/2012#

返回日期为 2012 年 2 月 2 日或 2012 年 2 月 3 日的项目。

包含多个日期中的一个或多个日期

In (#2/1/2012#, #3/1/2012#, #4/1/2012#)

返回日期为 2012 年 2 月 1 日、2012 年 3 月 1 日或 2012 年 4 月 1 日的项目。

包含特定月份(与年份无关)内的某个日期,如 12 月

DatePart("m", [销售日期]) = 12

返回日期在任一年的 12 月的项目。

包含特定季度(与年份无关)内的某个日期,如一季度

DatePart("q", [销售日期]) = 1

返回日期在任一年的第一季度的项目。

筛选 Null 值(即缺少值)

Is Null

返回尚未输入日期的项目。

筛选非 Null 值

Is Not Null

返回已输入日期的项目。

筛选 null (缺少) 或非 null 日期的示例

要包含满足以下条件的项目...

使用此条件

查询结果

筛选 Null 值(即缺少值)

Is Null

返回尚未输入日期的项目。

筛选非 Null 值

Is Not Null

返回已输入日期的项目。

在使用日期条件时遇到问题,例如无法获得所需结果? 请参阅日期条件在我的查询中不起作用

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。