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


MySQL ADDDATE方法用法及代码示例


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

用法

SELECT ADDDATE(date, INTERVAL expr unit);
SELECT ADDDATE(date, days);

参数

1. date | date/datetime

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

2. days | integer

添加到提供的 date 的天数。

3. expr unit | integer with units

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

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

警告

必须指定daysexpr unit 参数,它们不能一起使用。

返回值

将指定间隔添加到 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, ADDDATE(day_enrolled, 2)
FROM students;



+----------+--------------+--------------------------+
| fname    | day_enrolled | ADDDATE(day_enrolled, 2) |
+----------+--------------+--------------------------+
| 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, ADDDATE(day_enrolled, INTERVAL 2 MONTH)
FROM students;



+----------+--------------+-----------------------------------------+
| fname    | day_enrolled | ADDDATE(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 ADDDATE('2020-01-01', -1);



+---------------------------+
| ADDDATE('2020-01-01', -1) |
+---------------------------+
| 2019-12-31                |
+---------------------------+

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

单位名单

下表列出了支持的单位:

单元

预期的输入格式

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 | ADDDATE method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。