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


MySQL TIMESTAMPADD方法用法及代码示例


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

参数

1. unit | unit

指定间隔的单位。

可能的单位值

MICROSECOND

SECOND

MINUTE

HOUR

DAY

WEEK

MONTH

QUARTER

YEAR

2. interval | integer

添加到提供的日期/日期时间的间隔。

3. datetime_expr | date/datetime

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

返回值

将指定单位间隔添加到输入日期或日期时间的结果。

例子

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

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

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

基本用法

要将 1 小时添加到学生注册日期:

SELECT fname, day_enrolled, TIMESTAMPADD(HOUR, 1, day_enrolled)
FROM students;



+----------+--------------+-------------------------------------+
| fname    | day_enrolled | TIMESTAMPADD(HOUR, 1, day_enrolled) |
+----------+--------------+-------------------------------------+
| Sky      | 2015-12-03   | 2015-12-03 01:00:00                 |
| Ben      | 2016-04-20   | 2016-04-20 01:00:00                 |
| Travis   | 2018-08-14   | 2018-08-14 01:00:00                 |
| Arthur   | 2016-04-01   | 2016-04-01 01:00:00                 |
| Benjamin | 2014-01-01   | 2014-01-01 01:00:00                 |
+----------+--------------+-------------------------------------+

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

SELECT fname, day_enrolled, TIMESTAMPADD(MONTH, 2, day_enrolled)
FROM students;



+----------+--------------+--------------------------------------+
| fname    | day_enrolled | TIMESTAMPADD(MONTH, 2, day_enrolled) |
+----------+--------------+--------------------------------------+
| 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                           |
+----------+--------------+--------------------------------------+

负间隔

添加负间隔(即减去间隔):

SELECT fname, day_enrolled, TIMESTAMPADD(DAY, -1, day_enrolled)
FROM students;



+----------+--------------+-------------------------------------+
| fname    | day_enrolled | TIMESTAMPADD(DAY, -1, day_enrolled) |
+----------+--------------+-------------------------------------+
| Sky      | 2015-12-03   | 2015-12-02                          |
| Ben      | 2016-04-20   | 2016-04-19                          |
| Travis   | 2018-08-14   | 2018-08-13                          |
| Arthur   | 2016-04-01   | 2016-03-31                          |
| Benjamin | 2014-01-01   | 2013-12-31                          |
+----------+--------------+-------------------------------------+

这里我们从学生注册日期中减去 1 天。

相关用法


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