Mysql 字符串、時間、時間戳相互轉換,相減獲取秒數


涉及的函數
date_format(date, format) 函數
unix_timestamp() 函數
str_to_date(str, format) 函數
from_unixtime(unix_timestamp, format) 函數

1.字符串轉化成時間
select
str_to_date('2019-09-12 00:16:50','%Y-%m-%d %H:%i:%s'),
str_to_date('2019-09-12 00:16:50','%Y-%m-%d %H')

2019-09-12 00:16:50    2019-09-12 00:00:00


2.字符串轉化成時間戳
select
unix_timestamp('2019-09-12 00:00:50'),
unix_timestamp('2019-09-12 00:01:00');

1568217650    1568217660


3.時間轉換成字符串
select
date_format(now(), '%Y-%m-%d'),
date_format(now(), '%Y-%m-%d %H:%i:%s')

2020-08-24    2020-08-24 14:51:26


4.時間轉換成時間戳
select
unix_timestamp(now());

1598251906


5.時間戳轉換成時間
select from_unixtime(1598250986);  

2020-08-24 14:36:26


6.時間戳轉成成字符串
select from_unixtime(1598250986,'%Y-%m-%d');

2020-08-24


要想獲得正確的時間相減秒數,有以下三張方式:
1、time_to_sec(timediff(t2, t1))
2、timestampdiff(second, t1, t2)
3、unix_timestamp(t2) -unix_timestamp(t1)


列子:
 select  time_to_sec(timediff(str_to_date('2019-09-12 00:17:50','%Y-%m-%d %H:%i:%s'), str_to_date('2019-09-12 00:16:50','%Y-%m-%d %H:%i:%s')))

60


 select  timestampdiff(second, str_to_date('2019-09-12 00:17:50','%Y-%m-%d %H:%i:%s'), str_to_date('2019-09-12 00:16:50','%Y-%m-%d %H:%i:%s'))

-60


 select unix_timestamp(str_to_date('2019-09-12 00:17:50','%Y-%m-%d %H:%i:%s')) -unix_timestamp(str_to_date('2019-09-12 00:16:50','%Y-%m-%d %H:%i:%s'))

60

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM