Mysql中常用的日期和時間函數:
函數 | 功能 |
---|---|
CURDATE() | 返回當前日期 |
CURTIME() | 返回當前時間 |
NOW() | 返回當前的日期和時間 |
DATEDIFF(expr,expr2) | 返回起始時間和結束時間之間的天數 |
DATE_FORMAT(date,fmt) | 返回按字符串fmt格式化日期的date值 |
通過實例講解每個函數的使用方法:
eg:
1.CURDATE() 函數,返回當前日期,只包括年月日。
mysql> select curdate();
±-----------+
| curdate() |
±-----------+
| 2020-02-20 |
±-----------+
1 row in set (0.00 sec)
2.CURTIME()函數,返回當前時間,只包括時分秒。
mysql> select curtime();
±----------+
| curtime() |
±----------+
| 21:13:10 |
±----------+
1 row in set (0.00 sec)
3.NOW()函數,返回當前的日期和時間,包括年月日時分秒。
mysql> select now();
±--------------------+
| now() |
±--------------------+
| 2020-02-20 21:15:57 |
±--------------------+
1 row in set (0.00 sec)
4.DATE_FORMAT(date,fmt) 函數,此函數能夠按指定的格式顯示日期,常用到的格式如下表所示:
格式符 | 格式說明 |
---|---|
%S和%s | 兩位數字形式的秒(00,01,…,59) |
%i | 兩位數字形式的分(00,01,…,59) |
%H | 兩位數字形式,24小時(00,01,…,23) |
%T | 24小時的時間形式(hh:mm:ss) |
%W | 一週中每一天的英文名稱 |
%a | 一週中每一天的英文名稱縮寫 |
%Y | 四位數字表示的年份 |
%M | 月份名稱英文名稱 |
%D | 英文後綴表示月中的天數(1st,2nd,3rd,…) |
mysql> select date_format(now(),’%M,%D,%Y’);
±------------------------------+
| date_format(now(),’%M,%D,%Y’) |
±------------------------------+
| February,20th,2020 |
±------------------------------+
1 row in set (0.00 sec)
5.DATEDIFF(expr,expr2) 函數,用來計算兩個日期之間相差的天數。
mysql> select DATEDIFF(‘2020-08-08’, now());
±------------------------------+
| DATEDIFF(‘2020-08-08’, now()) |
±------------------------------+
| 170 |
±------------------------------+
1 row in set (0.00 sec)
注:個人記錄,並不全面。