您的位置:首页 > 数据库 > MySQL

MySQL计算日期的函数DATE_ADD(d,INTERVAL expr type)

2017-03-14 17:00 423 查看


MySQL计算日期的函数DATE_ADD(d,INTERVAL expr type)

DATE_ADD(d,INTERVAL expr type)函数返回起始日期d加上一个时间段后的日期。

expr是一个表达式,用来指定从起始日期添加或减去的时间间隔值。

expr是一个字符串。对于负值的时间间隔,它可以用一个负号“-”开头。

expr表达式与后面的间隔类型type对应。

MySQL中的日期间隔类型如下表所示:
类型(type值)含义expr表达式的形式
YEARYY
MONTHMM
DAYDD
HOURhh
MINUTEmm
SECONDss
YEAR_MONTH年和月YY和MM之间用任意符号隔开
DAY_HOUR日和小时DD和hh之间用任意符号隔开
DAY_MINUTE日和分钟DD和mm之间用任意符号隔开
DAY_SECOND日和秒钟DD和ss之间用任意符号隔开
HOUR_MINUTE时和分hh和mm之间用任意符号隔开
HOUR_SECOND时和秒hh和ss之间用任意符号隔开
MINUTE_SECOND分和秒mm和ss之间用任意符号隔开


实例1

使用DATE_ADD()函数执行日期加操作。SQL语句如下:
mysql>SELECT DATE_ADD('2014-10-8 23:59:59',INTERVAL 1 SECOND) AS col1,
->DATE_ADD('2014-10-8 23:59:59',INTERVAL '1 1' YEAR_MONTH) AS col2;


执行结果如下:



从上图中代码执行的结果可以看出:
DATE_ADD('2014-10-8 23:59:59',INTERVAL 1 SECOND)函数将时间增加1秒后,返回的结果为“2014-10-09 00:00:00”。
DATE_ADD('2014-10-8 23:59:59',INTERVAL '1 1' YEAR_MONTH)函数中,时间间隔使用的是YEAR_MONTH;expr表达式中的年和月之间用空格隔开,因此该函数返回的结果是d日期中一年零一个月以后的日期和时间2015-11-08 23:59:59。


实例2

在MySQL中,还可以使用负数来指定时间。

使用DATE_ADD()函数执行日期减操作。SQL语句如下:
mysql>SELECT DATE_ADD('2014-10-9 00:00:01',INTERVAL -1 SECOND) AS col1,
->DATE_ADD('2014-10-9',INTERVAL '-1 -1' YEAR_MONTH) AS col2;


执行结果如下:



从上图中代码执行的结果可以看出:
DATE_ADD('2014-10-9 00:00:01',INTERVAL -1 SECOND)函数将时间减少1秒后,返回的结果为“2014-10-09 00:00:00”。
DATE_ADD('2014-10-9',INTERVAL '-1 -1' YEAR_MONTH)函数返回日期d中一年零一个月以前的日期2013-09-09。


提示

DATE_ADD(d,INTERVAL expr type)函数在指定修改的时间段时,也可以指定负值,负值代表相减,即返回以前的日期和时间。

DATE_ADD(d,INTERVAL expr type)函数中的type必须在上表中。而且,type必须是上表中的某一项,不能是其中几项的组合。因此,使用该函数时,一定要注意type的选择。

DATE_ADD(d,INTERVAL expr type)函数和ADDDATE(d,INTERVAL expr type)函数的作用相同。
http://www.baike369.com/content/?id=5641
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: