位置:首頁 > 數據庫 > MySQL教學 > MySQL data_add()函數

MySQL data_add()函數

DATE_ADD(date,INTERVAL expr unit), DATE_SUB(date,INTERVAL expr unit)

這些函數執行日期運算。日期是一個DATETIME或DATE值,指定開始的日期。 expr是一個表達式,指定要添加或從開始日期減去一個間隔值。 expr是一個字符串; 它可能會以一個' - '符號開始為負值的時間間隔unit 是一個關鍵字,指示該單元中的表達應被解釋。

INTERVAL關鍵字和unit指示符不區分大小寫。

下表顯示expr參數為每個單位值的預期形式;

unit  期望的 expr 格式
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.MICROSECONDS'
MINUTE_SECOND 'MINUTES:SECONDS'
HOUR_MICROSECOND 'HOURS.MICROSECONDS'
HOUR_SECOND 'HOURS:MINUTES:SECONDS'
HOUR_MINUTE 'HOURS:MINUTES'
DAY_MICROSECOND 'DAYS.MICROSECONDS'
DAY_SECOND 'DAYS HOURS:MINUTES:SECONDS'
DAY_MINUTE 'DAYS HOURS:MINUTES'
DAY_HOUR 'DAYS HOURS'
YEAR_MONTH 'YEARS-MONTHS'

QUARTER 和 WEEK 值可在 MySQL5.0.0 及以上版本使用。

mysql> SELECT DATE_ADD('1997-12-31 23:59:59', 
    -> INTERVAL '1:1' MINUTE_SECOND);
+---------------------------------------------------------+
| DATE_ADD('1997-12-31 23:59:59', INTERVAL...             |
+---------------------------------------------------------+
| 1998-01-01 00:01:00                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT DATE_ADD('1999-01-01', INTERVAL 1 HOUR);
+---------------------------------------------------------+
| DATE_ADD('1999-01-01', INTERVAL 1 HOUR)                 |
+---------------------------------------------------------+
| 1999-01-01 01:00:00                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)