赛捷软件论坛's Archiver

vicky.yu 发表于 2024-10-12 09:30

DATE_ADD(date,INTERVAL expr unit), DATE_SUB(date,INTERVAL expr unit)

这些函数进行有关日期的算术运算。date 是一个 DATETIME 或者 DATE 类型的值,指明了起始时间。expr 表达式则是 date 要增加或者减去的时间间隔。expr 是一个字符串,可以以 '-' 开始来表示负时间区间。 unit 是一个关键词,指明了expr 的单位。

 INTERVAL 关键字和 unit(单位)指示符不区分大小写。

 下表列出了对于每种单位,expr 应有的形式。

unit 值        expr 应有的格式
MICROSECOND        微秒
SECOND        秒
MINUTE        分钟
HOUR        小时
DAY        天
WEEK        星期
MONTH        月
QUARTER        季度
YEAR        年
SECOND_MICROSECOND        '秒.微秒'
MINUTE_MICROSECOND        '分.微秒'
MINUTE_SECOND        '分:秒'
HOUR_MICROSECOND        '小时.微秒'
HOUR_SECOND        '时:分:秒'
HOUR_MINUTE        '时:分'
DAY_MICROSECOND        '天.微秒'
DAY_SECOND        '天 时:分:秒'
DAY_MINUTE        '天 时:分'
DAY_HOUR        '天 时'
YEAR_MONTH        '年-月'
 QUARTER 和 WEEK 自 MySQL 5.0.0 起受到支持。

mysql> SELECT DATE_ADD('1997-12-31 23:59:59',
    -> INTERVAL '1:1' MINUTE_SECOND);
+---------------------------------------------------------+
| DATE_ADD('1997-12-31 23:59:59', INTERVAL...             |
+---------------------------------------------------------+
| 1998-01-01 00:01:00                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT DATE_ADD('1999-01-01', INTERVAL 1 HOUR);
+---------------------------------------------------------+
| DATE_ADD('1999-01-01', INTERVAL 1 HOUR)                 |
+---------------------------------------------------------+
| 1999-01-01 01:00:00                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.