參考 https://baijiahao.baidu.com/s?id=1608326786755050044&wfr=spider&for=pc
1、NOW
獲取當前日期和時間的函數。
語法: NOW()
例如:select NOW();
2、CURDATE
獲取當前的日期
語法:CURDATE()
3、CURTIME()
獲取當前時間
語法:CURTIME()
4、DATE
獲取日期時間或者日期的日期部分
語法:DATE(date)
date 參數是合法的日期表達式。
5、EXTRACT
獲取返回日期/時間的單獨部分,比如年、月、日、小時、分鍾等等。
語法:EXTRACT(unit FROM date)
date 參數是合法的日期表達式。
unit 參數可以是下列的值:MICROSECOND、SECOND、MINUTE、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
例如獲取當前年月:select EXTRACT(YEAR_MONTH FROM now()) ;
6、DATE_ADD
將日期添加指定的時間間隔。
語法:DATE_ADD(date,INTERVAL expr type)
date 參數是合法的日期表達式。expr 參數是添加的時間間隔。
type 參數可以是下列值:MICROSECOND、SECOND、MINUTE、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
例如:select DATE_ADD(now(),INTERVAL 2 DAY); //獲取兩天后的時間
-- 將每位員工的入職日期加上一年 select ename,date_add(hiredate,interval 1 year) from emp; select ename,adddate(hiredate,interval 1 year) from emp;
7、DATE_SUB
將日期減去指定的時間間隔。
語法:DATE_SUB(date,INTERVAL expr type)
date 參數是合法的日期表達式。expr 參數是添加的時間間隔。
type 參數可以是下列值:MICROSECOND、SECOND、MINUTE、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
例如:select DATE_SUB(now(),INTERVAL 2 DAY); //獲取兩天前的時間
8、DATEDIFF
獲取兩個日期之間的天數。(只有日期部分參與計算)
語法:DATEDIFF(date1,date2)
date1 和 date2 參數是合法的日期或日期/時間表達式。
例如:SELECT DATEDIFF(NOW(),'2008-08-08') AS 北京奧運會多天前;
9、DATEFORMAT
格式化日期時間
語法:DATE_FORMAT(date,format)
date 參數是合法的日期。format 規定日期/時間的輸出格式。
格式:描述
%a:縮寫星期名
%b:縮寫月名
%c:月,數值
%D:帶有英文前綴的月中的天
%d:月的天,數值(00-31)
%e:月的天,數值(0-31)
%f:微秒
%H:小時 (00-23)
%h:小時 (01-12)
%I:小時 (01-12)
%i:分鍾,數值(00-59)
%j:年的天 (001-366)
%k:小時 (0-23)
%l:小時 (1-12)
%M:月名
%m:月,數值(00-12)
%p:AM 或 PM
%r:時間,12-小時(hh:mm:ss AM 或 PM)
%S:秒(00-59)
%s:秒(00-59)
%T:時間, 24-小時 (hh:mm:ss)
%U:周 (00-53) 星期日是一周的第一天
%u:周 (00-53) 星期一是一周的第一天
%V:周 (01-53) 星期日是一周的第一天,與 %X 使用
%v:周 (01-53) 星期一是一周的第一天,與 %x 使用
%W:星期名
%w:周的天 (0=星期日, 6=星期六)
%X:年,其中的星期日是周的第一天,4 位,與 %V 使用
%x:年,其中的星期一是周的第一天,4 位,與 %v 使用
%Y:年,4 位
%y:年,2 位