日期和时间函数DateAdd
【名称】
DateAdd
【类别】
日期和时间函数
【原形】
DateAdd(interval, number, date)
【参数】
DateAdd 函数语法中有下列命名参数:
部分
【描述】
interval
必选。字符串表达式,是所要加上去的时间间隔。
number
必选。数值表达式,是要加上的时间间隔的数目。其数值可以为正数(得到未来的日期),也可以为负数(得到过去的日期)。
date
必选。Variant (Date) 或表示日期的文字,这一日期还加上了时间间隔。
对于函数DateAdd(时间单位,时间,D),其时间单位为一个字符串,表示所要加上的时间单位,其取值及含义如下表所示;时间参数可以是数值型表达式,表示所要加上的时间;其函数值可以是正数(得到未来的日期),也可以是负数(得到过去的日期)。如果T参数值包含小数点,则在计算时先四舍五入,再求函数值。
表 DateAdd函数中interval 参数(时间单位参数)取值及含义
时间单位
含义
时间单位
含义
yyyy
年
d
日
q
季
w
一周的日数
m
月
h
时
y
一年的日数
n
分
ww
周
s
秒
【返回值】
返回包含一个日期的 Variant (Date),这一日期还加上了一段时间间隔。
【异常/错误】
无
【描述】
返回参考日期D加上一段时间T之后的日期,时间单位为一个字符串,表示所要加上的时间的单位,其取值及含义如上表所示。例如:执行Print DateAdd(”m”,2,Date) 后的结果为:2003-6-23。执行Print DateAdd(”q”,1,Date) 后的结果为:2003-7-23
【示例】
本示例先取得一个日期,再用 DateAdd 函数显示未来数月后的日期。
Dim FirstDate As Date ' 声明变量。
Dim IntervalType As String
Dim Number As Integer
Dim Msg
IntervalType = "m" ' "m"指定以“月份”作为间隔。
FirstDate = InputBox("Enter a date")
Number = InputBox("Enter number of months to add")
Msg = "New date: " & DateAdd(IntervalType, Number, FirstDate)
MsgBox Msg
【备注】
可以使用 DateAdd 函数对日期加上或减去指定的时间间隔。例如,可以用 DateAdd 来计算距今天为三十天的日期;或者计算距现在为 45 分钟的时间。
为了对 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设置决定,而不是由传递到date 参数的格式决定。
日期和时间函数的函数名、函数值类型和函数功能如下表所示。针对表中的举例,设当前的系统时间为2003年4月23日下午两点18分30秒。
表 日期和时间函数
函数名
函数值类型
功能
举例
Now
Date
返回当前的系统日期和系统时间
执行Print Now后的结果为:2003-4-23 14:18:30
Date[$][()]
Date
返回当前的系统日期
执行Print Date后的结果为:2003-4-23
Time[$][()]
Date
返回当前的系统时间
执行Print Time后的结果为:14:18:30
DateSerial(年,月,日)
Integer
相对1899年12月30日(为0)返回一个天数值。其中的年、月、日参数为数值型表达式
执行Print DateSerial (99,06,01)- DateSerial (99,05,01) 后的结果为:31
DateValue(C)
Integer
相对1899年12月30日(为0)返回一个天数值,参数C为字符型表达式
执行Print DateValue (“99,06,01”)-DateValue(“99,05,01”) 后的结果为:31
Year(D)
Integer
返回日期D的年份,D可以是任何能够表示日期的数值、字符串表达式或它们的组合。其中,参数为天数时,函数值为相对于1899年12月30日后的指定天数的年号,其取值在1753到2078之间
执行Print Year(Date) 后的结果为:2003
执行Print Year(365) 后的结果为:1900
1899年12月30日后的365天是1900年
Month(D)
Integer
返回日期D的月份,函数值为1到12之间的整数
执行Print Month(Date) 后的结果为:8
Day(D)
Integer
返回日期D的日数,函数值为1到31之间的整数
执行Print Day(Date) 后的结果为:23
WeekDay(D)
Integer
返回日期D是星期几, 函数值与星期的对应关系如表2.6所示
执行Print WeekDay (Date)后的结果为:3
Hour(T)
Integer
返回时间参数中的小时数,函数值为0到23之间的整数
执行Print Hour(Now)后的结果为:14
Minute(T)
Integer
返回时间参数中的分钟数,函数值为0到59之间的整数
执行Print Minute(Now) 后的结果为:18
Second(T)
Integer
返回时间参数中的秒数,函数值为0到59之间的整数
执行PrintSecond(Now) 后的结果为:30
DateAdd(时间单位,时间,D)
Date
返回参考日期D加上一段时间T之后的日期,时间单位为一个字符串,表示所要加上的时间的单位,其取值及含义如表2.7所示
执行Print DateAdd(”m”,2,Date) 后的结果为:
2003-6-23。
执行Print DateAdd(”q”,1,Date) 后的结果为:
2003-7-23
DateDiff(时间单位,D1,D2)
Long
返回两个指定日期D1和D2之间的间隔时间。如果日期D1比D2早,则函数值为正数,否则函数值为负数。时间单位,同DateAdd函数的时间单位参数
执行Print DateDiff (“m”,#6/16/2002#,#6/16/2003#后的结果为:12
执行Print DateDiff (“m”,#6/16/2003#,#6/16/2002#后的结果为:-12
IsDate(参数)
Boolean
判断参数是否可以转换成日期,参数可以是任何类型的有效表达式。如果参数的值可转化成日期型数据,则函数值为Tree,否则函数值为False。在Microsoft Windows中,其范围为公元100年1月1日至公元9999年12月31日。
IsDate(99-6-18)=False
IsDate(“99-6-18")=True
说明:(1)在表2.5中,日期参数D是任何能够表示为日期的数值型表达式、字符串型表达式或它们的组合。时间参数T是任何能够表示为时间的数值型表达式、字符串型表达式或它们的组合。
当参数D是数值型表达式时,其值表示相对于1899年12月30日前后天数,负数是1899年12月30日以前,正数是1899年12月30日以后。
(2)星期函数Weekday(D)的函数值与星期的对应关系如下表所示。
表 星期函数Weekday(D)的函数值与星期的对应关系
函数值
星期
函数值
星期
1
星期日
5
星期四
2
星期一
6
星期五
3
星期二
7
星期六
4
星期三
日期和时间函数DateAdd相关推荐
- Sql Server函数全解(四)日期和时间函数
阅读目录 1.获取系统当前日期的函数getDate(); 2.返回UTC日期的函数UTCDATE() 3.获取天数的函数DAY(d) 4.获取月份的函数MONTH(d) 5.获取年份的函数YEAR(d ...
- SQL_Server_2005_日期和时间函数(描述及实例)
本文地址:http://www.cnblogs.com/atree/archive/2011/03/10/SQL_Server_2005_dateadd_datediff.html 表达式:是常量.变 ...
- SQLServer常用的日期和时间函数梳理
今天给大家分享一下SQLServer常用的日期和时间函数知识笔记,希望对大家能有所帮助! 1.DATEADD(datepart,number,date) 作用:返回给指定日期加一个时间间隔后新的dat ...
- SQL日期与时间函数
来自网络 sql server日期时间函数 Sql Server中的日期与时间函数 1. 当前系统日期.时间 select getdate() 2. dateadd 在向指定日期加上 ...
- 学习SQL:SQL Server日期和时间函数
So far, we haven't talked about SQL Server date and time functions. Today we'll change that. We'll t ...
- 学习SQL:使用日期和时间函数创建SQL Server报表
In the previous two articles of this series, we've discussed how to create a report and how to use b ...
- php入门时间,php入门教程(二十一) php日期与时间函数
本节内容: php日期与时间函数 PHP提供了很多的处理日期和时间的函数,包括time().date().mktime().checkdate().microtime().strtotime()等,详 ...
- mysql now str,数据库学习之MySQL (十)—— 日期和时间函数 NOW STR_TO_DATE DATE_FORMAT 流程控制函数 IF IFNULL CASE...
MySQL学习专栏 正在持续更新中:) 文章目录 日期和时间函数 NOW STR_TO_DATE DATE_FORMAT 流程控制函数 IF IFNULL CASE 下章预告 日期和时间函数 NOW ...
- mysql 日期和时间函数_介绍一下mysql的日期和时间函数
介绍一下mysql的日期和时间函数 mysql> SELECT PERIOD_DIFF(9802,199703); -> 11 DATE_ADD(date,INTERVAL expr ty ...
最新文章
- .condarc文件是什么
- 过年回家应对七大姑八大姨,程序猿绝了!
- [转载]登录功能测试总结
- hdu3395纯KM
- 树形控件Tree Control
- ajax常见问题汇总(一)
- 【C语言练习】求两个数m和n的最大公约数(辗转相除法)
- 08服务器许可证安装向导,08_安装部署GRID许可证服务器.pdf
- 怎么把一个网页作为背景套在另一个网页上_设计科技公司网站背景的六个小技巧...
- Sqlserver2005迁移至Oracle系列之二:生成存储过程
- php5.2 json,php5.2 对json格式的支持
- 丢失控制文件恢复实验记录--4(在线日志文件没有损坏,归档日志丢失,直接重建控制文件(跟踪控制文件trace是旧的情况))...
- 海思烧写工具需要java_HiTool(海思芯片烧录工具)下载
- opencv实现电子试卷图片中对号、错误的检测
- 前端工程师的摸鱼日常(9)
- egret 显示帧动画
- Access control configuration prevents your request from being allo
- css设overflow:hiden行内元素会发生偏移的现象
- 如何用python请求接口
- TM1637驱动4位时钟数码管的Arduino 程序
热门文章
- 论文阅读笔记:Multi-view adaptive graph convolutions for graph classification
- C++ tuple的介绍及使用
- 5 年前端经验的大佬提供的职业规划
- 今天9:30 | ICML 2022 11位论文一作带你走进机器学习领域顶级会议
- vue 打包失败问题UglifyJs Unexpected token: name
- TED | 怎样成为一个自律的人
- 厉害了!几行代码搞定ML模型,低代码机器学习Python库正式开源
- mysql解析json/数组
- OSChina 周四乱弹 —— 出现了一个小姐姐舔我?
- 【开源项目】动态线程池框架Hippo4j源码解析