近期做了一套戰績系統,戰績要按天查詢,每天贏了多少分,打了多少局都要列出來。可是,怎麼用sql進行按天分組呢?首先,我們的表裡要確認已經有了時間戳記(int(10)),我這裡用的是create_time。
接下來,開始編輯語句
FROM_UNIXTIME函數支援轉換時間戳為字串,我們把時間戳記轉換為日期
FROM_UNIXTIME( create_time, '%Y年%m月%d日' )
然後,根據這個日期分組就可以了,以下是完整的SQL語句
select FROM_UNIXTIME( create_time, '%Y年%m月%d日' ) as day,count(*) as count,sum(score) as score from t_everygames where user_id =$userid group by FROM_UNIXTIME( create_time, '%Y年%m月%d日' ) order by 1 limit 0,6
同理,還可以依照年、月、日、時、分來分組,是不是很方便呢?
如果資料庫中存的是字串,例如2018-1-30這種,用到則是date_format()這個函數。
相關推薦:
以上是Mysql中的FROM_UNIXTIME實作按天查詢的詳細內容。更多資訊請關注PHP中文網其他相關文章!