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

来源:互联网 发布:见过最开放的女生知乎 编辑:程序博客网 时间:2024/05/20 07:15

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

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

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

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

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

MySQL中的日期间隔类型如下表所示:

类型(type值)含义expr表达式的形式YEAR年YYMONTH月MMDAY日DDHOUR时hhMINUTE分mmSECOND秒ssYEAR_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;

执行结果如下:

使用MySQL DATE_ADD()函数执行日期加操作的效果

从上图中代码执行的结果可以看出:

  • 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;

执行结果如下:

使用MySQL DATE_ADD()函数执行日期减操作的效果

从上图中代码执行的结果可以看出:

  • 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

0 0
原创粉丝点击