1. 程式人生 > 其它 >MySQL時間函式 | 時間戳和日期之間得轉換

MySQL時間函式 | 時間戳和日期之間得轉換

技術標籤:資料庫

一、時間戳轉日期

select FROM_UNIXTIME(1606028010, '%Y-%m-%d %H:%i:%s');

二、日期轉時間戳

select unix_timestamp('2018-01-15 09:45:16');

三、時間戳格式化

十位時間戳轉為固定格式(yyyy-MM-dd HH:mm:ss)日期

1.格式規定

%M 月名字(January……December)
%W 星期名字(Sunday……Saturday)
%D 有英語字首的月份的日期(1st, 2nd, 3rd, 等等。)
%Y 年, 數字, 4%y 年, 數字, 2%a 縮寫的星期名字(
Sun……Sat) %d 月份中的天數, 數字(00……31) %e 月份中的天數, 數字(0……31) %m 月, 數字(01……12) %c 月, 數字(1……12) %b 縮寫的月份名字(Jan……Dec) %j 一年中的天數(001……366) %H 小時(00……23) %k 小時(0……23) %h 小時(01……12) %I 小時(01……12) %l 小時(1……12) %i 分鐘, 數字(00……59) %r 時間,12 小時(hh:mm:ss [AP]M) %T 時間,24 小時(hh:mm:ss) %S 秒(00……59) %s 秒(00……59) %p AM或PM %w 一個星期中的天數(0=Sunday ……6
=Saturday ) %U 星期(0……52), 這裡星期天是星期的第一天 %u 星期(0……52), 這裡星期一是星期的第一天 %% 一個文字“%”。
select FROM_UNIXTIME(1567267200, '%Y-%m-%d %H:%i:%s');

在這裡插入圖片描述

四、日期格式化

select DATE_FORMAT('2020-12-15 11:19:27','%Y-%m-%d');

在這裡插入圖片描述

五、轉換13位時間戳為10位時間戳

mysql中的時間戳是10位的,直接擷取下標1-10位就可以了

select substr(1567267200000, 1, 10);

在這裡插入圖片描述

六、當前時間

1.獲取當前時間

select now
();

2.獲取當前十位時間戳

select unix_timestamp(now());

3.獲取三天前時間

SELECT now() - interval 72 hour;