Mysql中時間戳轉(zhuǎn)為Date的方法示例
前言
在工作中遇到一個情況:
日志系統(tǒng)的表中,時間字段存儲的是13位時間戳timestamp而不是日期數(shù)據(jù),而在業(yè)務(wù)中,我們需要通過時間和ip來進(jìn)行分組查詢給定日期的數(shù)據(jù).
當(dāng)然你可以選擇在業(yè)務(wù)層先將傳入的日期轉(zhuǎn)為時間戳,再去進(jìn)行查詢,但是既然mysql既然可以直接進(jìn)行轉(zhuǎn)換,那么省去在業(yè)務(wù)層的操作何樂而不為呢?
1.首先介紹一下mysql中將時間戳和日期互相轉(zhuǎn)換的函數(shù):
時間戳轉(zhuǎn)換成日期FROM_UNIXTIME():
FROM_UNIXTIME(1429063399,'%Y-%m-%d %H:%i:%s')
如果不需要時分秒,'%Y-%m-%d'就好
上面例子中使用的是10位時間戳,若是13位時間戳需要/1000,如下:
FROM_UNIXTIME(1429063399123/1000,'%Y-%m-%d %H:%i:%s')
日期轉(zhuǎn)換為時間戳UNIX_TIMESTAMP():
UNIX_TIMESTAMP('2015-04-15')
%Y年、%m月、%d日、%H時、%i分、%s秒最為常用
2.實(shí)際使用
在我實(shí)際使用中,我還將
DATE_FORMAT()函數(shù)(DATE_FORMAT(data,format) 函數(shù)用于以不同的格式顯示日期/時間數(shù)據(jù))和FROM_UNIXTIME()來進(jìn)行轉(zhuǎn)換:
DATE_FORMAT(FROM_UNIXTIME(DateTime/1000),'%Y-%m-%d')
SELECT ip,DATE_FORMAT(FROM_UNIXTIME(timestamp/1000),'%Y-%m-%d') as date,count(*) FROM s_page where DATE_FORMAT(FROM_UNIXTIME(timestamp/1000),'%Y-%m-%d') = ? GROUP BY ip,DATE_FORMAT(FROM_UNIXTIME(timestamp/1000),'%Y-%m-%d')
?為占位符
總結(jié)
到此這篇關(guān)于Mysql中時間戳轉(zhuǎn)為Date的文章就介紹到這了,更多相關(guān)Mysql時間戳轉(zhuǎn)為Date內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL?原理與優(yōu)化之Limit?查詢優(yōu)化
這篇文章主要介紹了MySQL?原理與優(yōu)化之Limit?查詢優(yōu)化,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-08-08關(guān)于mysql主備切換canal出現(xiàn)的問題解決
這篇文章主要給大家介紹了關(guān)于mysql主備切換canal出現(xiàn)的一些問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11mysql 實(shí)現(xiàn)遷移數(shù)據(jù)庫到另一臺服務(wù)器
這篇文章主要介紹了mysql 實(shí)現(xiàn)遷移數(shù)據(jù)庫到另一臺服務(wù)器中,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09MySQL 創(chuàng)建三張關(guān)系表實(shí)操
這篇文章主要介紹了MySQL 創(chuàng)建三張關(guān)系表實(shí)操,文章說先創(chuàng)建學(xué)生表然后科目表和分?jǐn)?shù)表三張有著密切關(guān)系的表,下文實(shí)操分享需要的小伙伴可以參考一下2022-03-03MySQL獲取二維數(shù)組字符串的最后一個值的實(shí)現(xiàn)代碼
這篇文章主要介紹了MySQL獲取二維數(shù)組字符串的最后一個值的實(shí)現(xiàn),文中有詳細(xì)的代碼示例供大家參考,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-04-04MySQL8.0登錄時出現(xiàn)Access?denied?for?user?‘root‘@‘localhost‘?
這篇文章主要給大家介紹了解決MySQL8.0登錄時出現(xiàn)Access?denied?for?user?‘root‘@‘localhost‘?(using?password:?YES)?拒絕訪問的問題,文中有詳細(xì)的解決方法,需要的朋友可以參考下2023-09-09