当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


MySQL DATE_ADD方法用法及代码示例


MySQL 的 DATE_ADD(~) 方法将指定的时间间隔添加到日期或日期时间值。

用法

SELECT DATE_ADD(date, INTERVAL expr unit);

参数

1. date | date/datetime

要添加时间间隔的日期/日期时间。

2. expr unit | integer with units

添加到提供的 date 的间隔及其单位。

请参阅页面底部的“单位列表”,了解有效的单位列表。

返回值

将指定间隔添加到 date 的结果。

例子

考虑下表有关一些学生的信息:

student_id

名称

名字

day_enrolled

年龄

用户名

1

Sky

Towner

2015-12-03

17

stowner1

2

Ben

Davis

2016-04-20

19

bdavis2

3

Travis

Apple

2018-08-14

18

tapple3

4

Arthur

David

2016-04-01

16

adavid4

5

Benjamin

Town

2014-01-01

17

btown5

可以使用此处的代码创建上述示例表。

基本用法

要将 2 天添加到学生注册日期:

SELECT fname, day_enrolled, DATE_ADD(day_enrolled, INTERVAL 2 DAY)
FROM students;



+----------+--------------+----------------------------------------+
| fname    | day_enrolled | DATE_ADD(day_enrolled, INTERVAL 2 DAY) |
+----------+--------------+----------------------------------------+
| Sky      | 2015-12-03   | 2015-12-05                             |
| Ben      | 2016-04-20   | 2016-04-22                             |
| Travis   | 2018-08-14   | 2018-08-16                             |
| Arthur   | 2016-04-01   | 2016-04-03                             |
| Benjamin | 2014-01-01   | 2014-01-03                             |
+----------+--------------+----------------------------------------+

要将 2 个月添加到学生注册日期:

SELECT fname, day_enrolled, DATE_ADD(day_enrolled, INTERVAL 2 MONTH)
FROM students;



+----------+--------------+------------------------------------------+
| fname    | day_enrolled | DATE_ADD(day_enrolled, INTERVAL 2 MONTH) |
+----------+--------------+------------------------------------------+
| Sky      | 2015-12-03   | 2016-02-03                               |
| Ben      | 2016-04-20   | 2016-06-20                               |
| Travis   | 2018-08-14   | 2018-10-14                               |
| Arthur   | 2016-04-01   | 2016-06-01                               |
| Benjamin | 2014-01-01   | 2014-03-01                               |
+----------+--------------+------------------------------------------+

负间隔

要从日期中减去 1 天:

SELECT DATE_ADD('2020-01-01', INTERVAL -1 DAY);



+-----------------------------------------+
| DATE_ADD('2020-01-01', INTERVAL -1 DAY) |
+-----------------------------------------+
| 2019-12-31                              |
+-----------------------------------------+

请注意,有一个单独的方法 DATE_SUB(~) 专门用于从日期/日期时间中减去间隔。

单位名单

下表列出了支持的单位:

单元

预期的输入格式

MICROSECOND

MICROSECONDS

SECOND

SECONDS

MINUTE

MINUTES

HOUR

HOURS

DAY

DAYS

WEEK

WEEKS

MONTH

MONTHS

QUARTER

QUARTERS

YEAR

YEARS

SECOND_MICROSECOND

'SECONDS.MICROSECONDS'

MINUTE_MICROSECOND

'MINUTES:SECONDS.MICROSECONDS'

MINUTE_SECOND

'MINUTES:SECONDS'

HOUR_MICROSECOND

'HOURS:MINUTES:SECONDS.MICROSECONDS'

HOUR_SECOND

'HOURS:MINUTES:SECONDS'

HOUR_MINUTE

'HOURS:MINUTES'

DAY_MICROSECOND

'DAYS HOURS:MINUTES:SECONDS.MICROSECONDS'

DAY_SECOND

'DAYS HOURS:MINUTES:SECONDS'

DAY_MINUTE

'DAYS HOURS:MINUTES'

DAY_HOUR

'DAYS HOURS'

YEAR_MONTH

'YEARS-MONTHS'

相关用法


注:本文由纯净天空筛选整理自Arthur Yanagisawa大神的英文原创作品 MySQL | DATE_ADD method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。