mysql中將時間轉為秒


項目中遇到的問題,需要將時間(時 分 秒)轉為秒,業務上處理有些麻煩,嘗試找了多種處理函數,然而並沒有用

完美解決辦法:

TIME_TO_SEC   格式'HH:MM:SS'或HHMMSS

SELECT
userId,marks, ifnull(TIME_TO_SEC(usedTime),'0') usedTimes,usedTime
FROM
x_courseissued x
where
x.isflag= 'B' AND x.flag= 0
AND (x.stateFlag='Y' or x.stateFlag='P')

並且這個函數可以相互轉換:秒  轉    時 分 秒 

SELECT SEC_TO_TIME(120);

 

 

但是TIME_TO_SEC 是把 時分秒轉為 秒,並不會對年月日進行處理;

如果業務有需要可以使用UNIX_TIMESTAMP

 UNIX_TIMESTAMP 函數返回的是自1970年以來的秒數,所以時間計算業務需要的話可以使用這個函數

應用場景計算兩個時間差開始時間  結束時間

SELECT (UNIX_TIMESTAMP(STR_TO_DATE(end_time,'%Y-%m-%d %H:%i:%s')) -
UNIX_TIMESTAMP(STR_TO_DATE(begin_time,'%Y-%m-%d %H:%i:%s'))) useTime

SELECT (UNIX_TIMESTAMP(STR_TO_DATE('2017-10-1 00:05:00','%Y-%m-%d %H:%i:%s')) -
UNIX_TIMESTAMP(STR_TO_DATE('2017-10-1 00:00:00','%Y-%m-%d %H:%i:%s'))) useTime

 

  

 


免責聲明!

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



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