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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
