MySql經常使用日期時間函數

1. 日期時間格式

DATE_FORMAT(date,format)函數用於以不一樣的格式顯示日期/時間數據,format 規定日期/時間的輸出格式,能夠有下面的格式:sql

%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:ssAM或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位

2. 獲取日期時間

-- 獲取當前日期時間:2021-04-21
select curdate();
-- 獲取當前日期:2021-04-21 14:20:00
select now();
-- 獲取當前unix時間戳
select unix_timestamp();
-- 獲取指定日期時間unix時間戳
select unix_timestamp(curdate());
-- unix時間戳轉換爲日期時間格式,默認格式:'%Y-%m-%d %H:%i:%s'
select from_unixtime(unix_timestamp(now()))
-- unix時間戳轉換爲指定日期時間格式,DATE_FORMAT(date,format)
select from_unixtime(unix_timestamp(),'%Y_%m_%d_%H_%i_%s')

3. 獲取增長單位時間的日期或時間:date_add()

set @date = curdate();
set @dateTime = now();

select date_add(@date, interval 1 year); -- 年
select date_add(@date, interval 1 quarter); -- 季度
select date_add(@date, interval 1 month); -- 月
select date_add(@date, interval 1 week); -- 星期
select date_add(@date, interval 1 day); -- 天
select date_add(@dateTime, interval 1 hour); -- 小時
select date_add(@dateTime, interval 1 minute); -- 分鐘
select date_add(@dateTime, interval 1 second); -- 秒
select date_add(@dateTime, interval 1 microsecond); -- 毫秒

4. 獲取減小單位時間的日期或時間:date_sub()

set @date = curdate();
set @dateTime = now();

select date_sub(@date, interval 1 year);
select date_sub(@date, interval 1 quarter);
select date_sub(@date, interval 1 month);
select date_sub(@date, interval 1 week);
select date_sub(@date, interval 1 day);
select date_sub(@dateTime, interval 1 hour);
select date_sub(@dateTime, interval 1 minute);
select date_sub(@dateTime, interval 1 second);
select date_sub(@dateTime, interval 1 microsecond);

5.參考地址

Sql函數詳解請參考SQL Date 函數ide

相關文章
相關標籤/搜索