1. 程式人生 > >巧用Mysql中的FROM_UNIXTIME進行按天查詢

巧用Mysql中的FROM_UNIXTIME進行按天查詢

近期做了一套戰績系統,戰績要按天查詢,每天贏了多少分,打了多少局都要列出來。

可是,怎麼用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()這個函式。