我們在用mysql抽取資料時候,經常需要按照天、周、月等不同的粒度對資料進行分組統計。而我們的時間可能是「2017/12/5 0:0:0」這種準確的時間。所以在進行分組之前我們需要對時間進行一下處理。
date_format是mysql內建的乙個函式,作用是以不同的格式顯示日期/時間資料。具體的語法如下:
date_format(date,format)
,其中
下面我們通過具體例子來看如何通過date_format進行分組統計:
下表兩列分別代表產品買出的準確時間(精確到秒),和買出的產品型別。
start_time
product_no
2017/12/1 00:00:11
2a2017/12/3 07:51:11
3c2017/12/3 07:59:25
3c2017/12/5 15:40:45
6c現在我們需要對每天,每週,每月各個產品的銷量進行統計,
1)按天統計:
select date_format(start_time,'%y%m%d') days,count(product_no) count from test group by days;
2)按周統計:
select date_format(start_time,'%y%u') weeks,count(product_no) count from test group by weeks;
3)按月統計:
select date_format(start_time,'%y%m') months,count(product_no) count from test group bymonths;
參考文獻:format格式介紹
Mysql根據時間,按日 周 月 年進行分組查詢
select date format created date,y m d as time,count 1 count from t warn info where device adress 301800000000 group by time select date format created...
MySql按周 月 日分組統計資料的方法
select date format create time,y u weeks,count caseid count from tc case group by weeks select date format create time,y m d days,count caseid count f...
MySql按周 月 日分組統計資料的方法
date format select date format create time,y u weeks,count caseid count from tc case group by weeks select date format create time,y m d days,count ca...