MySQL中的ADDDATE()函数用于将指定的时间间隔添加到给定的日期和时间。添加间隔后,它将返回日期或DateTime。
用法:
ADDDATE(date, INTERVAL expr unit) OR ADDDATE(expr, days)
参数:此方法接受两个参数。
- date:我们要修改的给定日期。
- days :我们要添加到给定日期的天数。
-
expr:日期或日期时间表达式或数字。可以以下格式给出-
- MICROSECONDS
- SECONDS
- MINUTES
- HOURS
- DAYS
- WEEKS
- MONTHS
- QUARTERS
- YEARS
- “ SECONDS.MICROSECONDS”
- ‘MINUTES:SECONDS.MICROSECONDS’
- ‘MINUTES:SECONDS
- “小时:分钟:SECONDS.MICROSECONDS”
- “小时:分钟:秒”
- “小时:分钟”
- ‘DAYS HOURS:MINUTES:SECONDS.MICROSECONDS’
- ‘DAYS HOURS:MINUTES:SECONDS’
- “ DAYS HOURS:MINUTES”
- “ DAYS HOURS”
- ‘YEARS-MONTHS’
-
Unit:要添加的时间间隔类型。它是给定类型之一-
- MICROSECOND
- SECOND
- MINUTES
- 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
返回值:添加间隔后,它将返回日期或DateTime。
示例1:
使用ADDDATE函数将指定日期添加15天。
SELECT ADDDATE('2020-08-20', INTERVAL 15 DAY) as Updated_date;
输出:
Updated_date |
---|
2020-09-04 |
示例-2:
使用ADDDATE函数以指定的日期时间添加30分钟。
SELECT ADDDATE('2020-08-28 20:59:59', INTERVAL 30 MINUTE) as Updated_datetime;
输出:
Updated_datetime |
---|
2020-08-28 21:29:59 |
示例3:
使用ADDDATE函数将指定的日期添加4周。
SELECT ADDDATE('2020-08-12', INTERVAL 4 WEEK) as Updated_date;
输出:
Updated_date |
---|
2020-09-09 |
示例4:
使用ADDDATE函数以指定的日期添加6个月。
SELECT ADDDATE('2019-08-12', INTERVAL 6 MONTH) as Updated_date ;
输出:
Updated_date |
---|
2020-02-12 |
示例5:
使用ADDDATE函数将具有指定日期的10年相加。
SELECT ADDDATE('2010-12-10', INTERVAL 10 YEAR) as Updated_date ;
输出:
Updated_date |
---|
2020-12-10 |
示例6:
使用ADDDATE函数以指定的日期时间加上5天10小时05分20秒。
SELECT ADDDATE('2020-08-20 05:15:19', INTERVAL '5-10-05-20' DAY_SECOND) as Updated_datetime;
输出:
Updated_datetime |
---|
2020-08-25 15:20:39 |
示例7:
ADDDATE函数可用于设置列的值。为了演示,创建一个名为ScheduleDetails的表。
CREATE TABLE ScheduleDetails( TrainId INT NOT NULL, StationName VARCHAR(20) NOT NULL, TrainName VARCHAR(20) NOT NULL, ScheduledlArrivalTime DATETIME NOT NULL, PRIMARY KEY(TrainId ) );
现在在ScheduleDetails表中插入值。我们将使用ADDDATE函数来表示到达时间的延迟。 ExpectedArrivalTime列中的值将是ADDDATE函数给定的值。
INSERT INTO ScheduleDetails (TrainId, StationName, TrainName, ScheduledlArrivalTime ) VALUES (12859, 'KGP', 'Gitanjali Express ', '2020-11-17 10:20:10');
现在,检查ScheduleDetails表:
SELECT *, ADDDATE(ScheduledlArrivalTime, INTERVAL '0-5-05-20' DAY_SECOND) AS ExpectedArrivalTime FROM ScheduleDetails;
输出:
TRAINID | STATIONNAME | TRAINNAME | SCHEDULEDARRIVALTIME | EXPECTEDARRIVALTIME |
---|---|---|---|---|
12859 | KGP | Gitanjali Express | 2020-11-17 10:20:10 | 2020-11-17 15:25:30 |
相关用法
- MariaDB ADDDATE()、ADDTIME()用法及代码示例
- MySQL LEAD() and LAG()用法及代码示例
- MySQL BIN()用法及代码示例
- MySQL LAST_DAY()用法及代码示例
- MySQL WEEKOFYEAR()用法及代码示例
- MySQL MOD()用法及代码示例
- MySQL Group_CONCAT()用法及代码示例
- MySQL DEFAULT()用法及代码示例
- MySQL AES_ENCRYPT()用法及代码示例
- MySQL AES_DECRYPT()用法及代码示例
- MySQL MD5用法及代码示例
- MySQL COMPRESS( )用法及代码示例
- MySQL PASSWORD用法及代码示例
- MySQL DES_DECRYPT()用法及代码示例
- MySQL DES_ENCRYPT()用法及代码示例
- MySQL DECODE( )用法及代码示例
- MySQL ENCODE( )用法及代码示例
- MySQL ISNULL( )用法及代码示例
- MySQL NULLIF( )用法及代码示例
- MySQL VERSION()用法及代码示例
- MySQL USER( )用法及代码示例
- MySQL CONVERT( )用法及代码示例
注:本文由纯净天空筛选整理自jana_sayantan大神的英文原创作品 ADDDATE() function in MySQL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。