MySQL DATE_SUB 函数
-
定义和用法
DATE_SUB - 日期相减。 -
语法
DATE_SUB(date,INTERVAL expr unit)
date是指定开始日期的DATETIME或DATE值。 expr是一个表达式,指定要从开始日期开始减少的间隔值。 expr是一个字符串; 它可以以“-”开头表示负间隔。 unit是一个关键字,指示应解释表达式的单位。INTERVAL关键字和单位说明符不区分大小写。下表显示了每个单位值的expr参数的预期形式;单位值 预期的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' 从MySQL 5.0.0开始,值QUARTER和WEEK可用。 -
示例
尝试一下mysql> SELECT DATE_SUB('1997-12-31 23:59:59', -> INTERVAL '1:1' MINUTE_SECOND); +---------------------------------------------------------+ | DATE_SUB('1997-12-31 23:59:59', INTERVAL... | +---------------------------------------------------------+ | 1998-01-01 00:01:00 | +---------------------------------------------------------+ 1 row in set (0.00 sec) mysql> SELECT DATE_SUB('1999-01-01', INTERVAL 1 HOUR); +---------------------------------------------------------+ | DATE_SUB('1999-01-01', INTERVAL 1 HOUR) | +---------------------------------------------------------+ | 1999-01-01 01:00:00 | +---------------------------------------------------------+ 1 row in set (0.00 sec)