将指定 number 时间间隔(有符号整数)与指定 date 的指定 datepart 相加后,返回该 date。 有关所有 Transact-SQL 日期和时间数据类型及函数的概述,请参阅日期和时间数据类型及函来自数 (Transact-SQL)。有关日期和时间数据类型及函数共有的360百科信息和示例,请参阅使用日期和时间数据。
返回包含一个日期的 Variant (Date),这一日期还加上来自了一段时间间隔。
表达式 DateAdd(timeinterval,number,date)
interval必要。字符作工划取绝盟分广知串表达式,是所要加上去的时间间隔。
number必要。数值表达式,是要加上的时间间隔的数目。其数值可360百科以为正数(得到未来的翻振察些太受爱办觉日期),也可以为负数(阻盐味想最批立师活听得到过去的日期)。
date必要。Variant (Date) 或表示日期的文字,这一日期还加上了时间间隔。
interva作也l 参数具有以下设定值:
设置 | 描述 |
---|---|
yy套武皇包许演yy | 年 |
q | 季 |
m | 月 |
y | 一年的日数 |
d | 留班限确仍议色误鸡益见 日 |
w | 一周的日数 |
ww | 周 |
h | 时 |
n | 分钟 |
s | 秒 |
可以使用 Dat跳永eAdd 函数对日期加上或减去指定的时间间隔。例如,可以用 DateAdd 来计算距今天为30天的日期;或者计算距现在为 4际轴负5 分钟的时间。
为了对 date 加上"日",可以使用"一年的日数" ("y"),"日" ("d") 或"一周的日数" ("w")。
DateAdd 函数将不返回无效日期。在以下实例中将 1 月31 日加上一个月:
DateAdd(被盟拿候几如严正奏买m, 1, 31-Jan-95)
上例中,DateAdd 返回 1995 年 2 月 28 日,而不是 1995 年 2 月 31 日。如果 date 是 1996 年 1 月 31 日,则由于 1996 年是闰年,返回值是 1996 年 2 月 29 日。
如果计算的日期超前 100 年(减去固粉的年度超过 date 中的年份),就会导致错误发生。
如果 number 不是一个 Long 值,则在计算时取最接近的整数值来计算。
注意 DateAdd 返回值的格式由 Control Panel设置决定,而不是由传递到d土程接并歌或ate 参数的格式决定。
number
是用来增加 datepart 的值破作。数值表达式,设定一个日期所加上的一段期间,可为正值或负值,正值表示加(结果为 >date 以来自后的日期),负值表示减(结果为 >date 以前的日期)。
如果指定一个不是整数的值,则将废弃此值的小数部分。例如,如果为 datepart 指定 day,为 num360百科ber 指定 1.75,则 date 将增加 1。
da谈儿副内举提住胡te
是返回 dat超etime 或 smalldatetime 值或日期格式字符串的表达式。有关指定日期的更多信息,请参见 datetime 和 smalld效口笑雨米助沉任让atetime。
如果头日田跟还英您只指定年份的最后两位数下样字,则小于或等于"两位数年份截止期"配置选项的值的最后两位数字的数字所在世纪与截止年所在世纪相术权立叫状世怕己害剂同。大于该选项的值的最后两位数字的数字所在世纪为截止年所的律硫车宪回太伤满民北在世纪的前一个世纪。例如,如果 two digit year cut振层散异培会善干将向降off 为 2049(默认),则 49 被解释为 2049,2050 被解释为 1950。为避免模糊,请使用四位数的年份。
返回款类型
返回 datet况洋实缺刑专教车普杨滑ime,但如果 date 参数是 smalldatetime,返回 smalldate殖浓后time。
示例
此示例打印出 pubs 数据库中标题的时间结构的列表。此时间结构表示当前发布日期加上 21 天。
USE pubs
GO
SELECT DATEADD(day, 21, pubd绝快完等右半粮思超了ate) AS timeframe
FROM titles
GO
下面是结果集:
timefram资乡号土友见命即字e
---------------------------
Jul 3 1991 12:00AM
Jun 续待示屋宁调类呢导足刘30 1991 12:00AM
Jul 21 1991 12:00AM
Jul 13 1991 12:00AM
Jun 30 1991 12:00AM
Jul 9 1991 12:00AM
客海宣粉距台房罗Mar 14 1997 5:09PM
Jul 21 1991 12:00AM
Jul 3 1994 12:00AM
福据似记排写长 Mar 14 1997 5:09PM
Nov 11 1991 12:00AM
Jul 6 1991 12:00AM
Oct 26 1991 12:00AM
Jul 3 1991 12:00AM
Jul 3 1991 12:00AM
Nov 11 1991 12:00AM
Jul 3 1991 12:00AM
Jul 3 1991 12:00AM
(18 row(s) aff胜输剂精怕鱼威皮利ected)
MYSQL上应用实例:
select * from format where add_date >="dateadd('dd',-1,'2008-05-19')"
取出2008年5月18日以后的所有数据。
ACCESS上应用实例:
select * from format where add_date >=dateadd('d',1,#2008/05/19#)
取出2008年5月20日以后的所有数据。
本示例先取得一个日期,再用 DateAdd 函数显示未来数月后的日期。
Dim FirstDate As Date ' 声明变量。Dim IntervalType As StringDim Number As IntegerDim MsgIntervalType = "m" ' "m"指定以"月份"作为间隔。FirstDate = InputBox("Enter a date")Number = InputBox("Enter number of months to add")Msg = "New date: " & DateAdd(IntervalType, Number, FirstDate)MsgBox Msg