在 Access 查询中使用日期作为条件的示例

应用对象
Microsoft 365 专属 Access Access 2024 Access 2021 Access 2019 Access 2016

若要了解如何创建查询,请参阅 查询简介

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

本文内容

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

要包含满足以下条件的项目... 使用此条件 查询结果
包含今天的日期 Date() 返回日期为今天的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到日期字段设置为 2012 年 2 月 2 日的项目。
包含昨天的日期 Date()-1 返回具有昨天日期的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 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 天内的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2012 年 1 月 24 日至 2012 年 2 月 2 日期间的项目。
包含当前月内的日期 Year([销售日期]) = Year(Now()) And Month([销售日期]) = Month(Now()) 返回日期在当前月内的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2012 年 2 月的项目。
包含上个月内的日期 Year([销售日期])* 12 + DatePart("m", [销售日期]) = Year(Date())* 12 + DatePart("m", Date()) - 1 返回日期在上个月内的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2012 年 1 月的项目。
包含下个月内的日期 Year([销售日期])* 12 + DatePart("m", [销售日期]) = Year(Date())* 12 + DatePart("m", Date()) + 1 返回日期在下个月内的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2012 年 3 月的项目。
包含前 30 天或 31 天内的日期 Between Date( ) And DateAdd("M", -1, Date( )) 返回一个月的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2012 年 1 月 2 日至 2012 年 2 月 2 日期间的项目。
包含当前季度内的日期 Year([销售日期]) = Year(Now()) And DatePart("q", [SalesDate]) = DatePart("q", Now()) 返回当前季度的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2012 年第一季度的项目。
包含上个季度内的日期 Year([销售日期])*4+DatePart("q",[销售日期]) = Year(Date())*4+DatePart("q",Date())- 1 返回上个季度的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2011 年最后一个季度的项目。
包含下个季度内的日期 Year([销售日期])*4+DatePart("q",[销售日期]) = Year(Date())*4+DatePart("q",Date())+1 返回下个季度的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2012 年第二季度的项目。
包含当年内的日期 Year([销售日期]) = Year(Date()) 返回当年的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2012 年的项目。
包含去年内的日期 Year([销售日期]) = Year(Date()) - 1 返回去年的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2011 年的项目。
包含去年内的日期 Year([销售日期]) = Year(Date()) + 1 返回日期为明年的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2013 年的项目。
包含介于 1 月 1 日和今天之间的日期(当年到今天为止的项目) Year ([SalesDate]) = Year (Date () ) and Month ([SalesDate]) <= Month (Date () ) 和 day ([SalesDate]) <= Day (Date () ) 返回日期介于当年 1 月 1 日到当天之间的项目。 如果今天的日期是 2012 年 2 月 2 日,你将看到 2012 年 1 月 1 日至 2012 年 2 月 2 日的项目。
包含发生在过去的日期 < 日期 () 返回日期为当天之前的项目。
包含发生在将来的日期 > 日期 () 返回日期为当天之后的项目。

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

要包含满足以下条件的项目... 使用此条件 查询结果
完全匹配某个日期,如 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# 和 <#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# 或 >#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 返回已输入日期的项目。

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