【转载】〖SQL〗Access中时间操作语句

原帖地址点击打开链接


ACCESS语句:

select * from 数据表 where (DateDiff('d',日期字段,Date())=0)  

语法

DateDiff(interval, date1, date2 [, firstdayofweek] [, firstweekofyear] )

DateDiff 函数的语法包含以下参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。)

参数 说明
interval 必选。该表达式为用于计算 date1 和 date2 之间的差的时间间隔。
date1, date2 必选。变量型(日期型)。表示两个要用于计算的日期。
firstdayofweek 可选。常量 ,指定一周的第一天。如果不指定,则默认为星期日。
firstweekofyear 可选。常量,指定一年的第一周。如果不指定,则第一周默认为 1 月 1 日所在的周。

设置

interval 包含以下设置:

设置 说明
yyyy
q 季度
m
y 某年的某一天
d
w 工作日
ww
h
n
s

firstdayofweek 参数包含以下设置:

常量 说明
vbUseSystem 0 使用 NLS API 设置。
vbSunday 1 星期日(默认)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
常量 说明
vbUseSystem 0 使用 NLS API 设置。
vbFirstJan1 1 从 1 月 1 日所在的周开始(默认)。
vbFirstFourDays 2 从至少包含新年中四天的第一周开始。
vbFirstFullWeek 3 从一年的第一个全周开始。

注解

可以使用 DateDiff 函数确定在两个日期之间存在多少指定的时间间隔。例如,可以使用 DateDiff 计算两个日期之间的天数或今天到年末之间的周数。

若要计算 date1 和 date2 之间的天数,可以使用“某年的某一天”(“y”) 或“天”(“d”)。当 interval 为“工作日”(“w”) 时,DateDiff 返回两个日期之间的周数。如果 date1 为星期一,则 DateDiff 会计算 date2 之前的星期一的个数。它会将 date2 计算在内,但不会将 date1 计算在内。但是,如果 interval 为“周”(“ww”),DateDiff 函数将返回两个日期之间的日历周数。它会计算 date1 和 date2 之间的星期日的个数。如果 date2 为星期日,则 DateDiff 会将其计算在内;但即使 date1 为星期日,也不会将其计算在内。

如果 date1 引用了比 date2 晚的时间点,则 DateDiff 函数返回一个负数。

firstdayofweek 参数会影响使用“w”和“ww”间隔符号的计算。

如果 date1 或 date2 为日期文本 (日期文本:具有有效格式的任意字符序列,两边由编号符号 (#) 括起。有效格式包括由代码的区域设置指定的日期格式或通用的日期格式。),则指定的年会成为日期的永久部分。但是,如果 date1 或 date2 括在双引号 (" ") 中,并且省略了年份,则每次计算 date1 或 date2 表达式时,当前年份都会插入代码中。这样即可编写用于不同年份的代码。

将 12 月 31 日与来年的 1 月 1 日相比较时,对于“年”("yyyy"),即使仅过去一天,DateDiff 也返回 1。

 注释    对于 date1 和 date2,如果 Calendar 属性设置为公历,则提供的日期必须为公历。如果日历为回历,则提供的日期必须为回历。

原文地址:https://www.cnblogs.com/ymjia/p/3590310.html