MySQL日期函数总结
DATE_ADD() 函数
用法:
DATE_ADD(date,INTERVAL expr type)
date 参数是合法的日期表达式。
expr 参数是您希望添加的时间间隔,注意:expr是一个字符串,对于负值间隔,可以以"-"开头
type 参数可以是下列值:
DAY HOUR MINUTE SECOND WEEK MONTH YEAR DAY_HOUR ...
Demo:
mysql> select date_add('2019-12-26',INTERVAL '5' day);
+-----------------------------------------+
| date_add('2019-12-26',INTERVAL '5' day) |
+-----------------------------------------+
| 2019-12-31 |
+-----------------------------------------+
mysql> select date_add('2018-12-26',INTERVAL '-5' day);
+------------------------------------------+
| date_add('2018-12-26',INTERVAL '-5' day) |
+------------------------------------------+
| 2018-12-21 |
+------------------------------------------+
DATE_SUB()函数
DATE_SUB() 函数从日期减去指定的时间间隔。
用法:
DATE_SUB(date,INTERVAL expr type)
用法与DATE_ADD()基本相同,expr值刚好相反,如:
mysql> SELECT DATE_SUB('2019-12-26' , INTERVAL -10 DAY);
+------------------------------------------------------------+
| DATE_SUB('2019-12-26' , INTERVAL -10 DAY) |
+------------------------------------------------------------+
| 2020-01-05 |
+------------------------------------------------------------+
DATE()函数
从 date 或者 datetime 表达式中提取出日期部分yyyy-MM-dd。
如:
mysql> SELECT DATE('2019-12-26 00:00:01');
+------------------------------------------+
| DATE('2018-12-26',INTERVAL '-5' day) |
+------------------------------------------+
| 2019-12-26 |
+------------------------------------------+
DATEDIFF()函数
将两个日期相减,返回两个日期之间的天数。
用法:
DATEDIFF(date1,date2)
如:
mysql> SELECT DATEDIFF('2018-12-30','2018-12-21') AS DiffDate;
+------------------------------------------+
| DiffDate |
+------------------------------------------+
| 9 |
+------------------------------------------+
NOW()函数
返回当前日期和时间。
如:
mysql> SELECT now(); +------------------------------------------+ | now() | +------------------------------------------+ | 2020-01-02 19:58:40 | +------------------------------------------+
TIMESTAMP()函数
只有一个参数时,该函数返回 date 或者 datetime 表达式。当有两个参数时,将两个参数相加。转换、增、减函数。
mysql> SELECT TIMESTAMP('2019-10-01');
+------------------------------------------+
| TIMESTAMP('2019-10-01') |
+------------------------------------------+
| 2019-10-01 00:00:00 |
+------------------------------------------+
mysql> select timestamp('2018-08-08 08:00:00', '01:01:01') stamp;
+------------------------------------------+
| stamp |
+------------------------------------------+
| 2018-08-08 09:01:01 |
+------------------------------------------+

浙公网安备 33010602011771号