MySql按指定天數進行分組資料統計分析 2

2022-08-24 11:33:10 字數 860 閱讀 1050

上次的隨筆1中寫的分組方式,經分析,是從前往後進行分組,即若選擇2014的資料進行統計每11天為一組的話,1的分組方式,

按照2014-01-01——2014-01-11為一組,之後每11天為一組。

但如果想按以最近11天為一組的話,就要使用下面的sql進行查詢,

sql中的關鍵是groupnum的獲取,year(date)* 1000 為區分年份;

( dayofyear(date)+ 

11 - mod(dayofyear(curdate()) ,11)

) div 11 下劃線部分為增加的偏移量,以滿足按照最近11天進行分組

注:按照上面的表示式計算出的groupnum進行分組,是不包含當天進行的統計,如果想要包括當天的資料,則下劃線部分的值減1即可。

1

select

2 job_id as

jobid,

3sum(count)as

totalnum,

4count(job_id)as

countnum,5(

6year(date)*

1000+(

7 dayofyear(date)+

11- mod(dayofyear(curdate()) ,11

)8 )div 11

9 )as

groupnum

10from

11job_logs

12where

13year(date)>

2013

14group

by15 groupnum

Mysql按天分組(按日分組)

select date format date created,y m d as day,sum order price as sumtol from dn sale where sale person id 1 group by date format date created,y m d 根據f...

Mysql按日 周 月進行分組統計

我們在用mysql抽取資料時候,經常需要按照天 周 月等不同的粒度對資料進行分組統計。而我們的時間可能是 2017 12 5 0 0 0 這種準確的時間。所以在進行分組之前我們需要對時間進行一下處理。date format是mysql內建的乙個函式,作用是以不同的格式顯示日期 時間資料。具體的語法如...

mysql 按日期分組

select date format now y m d days,count caseid count from tc case group by days date format是可以把一些時間格式轉化為你所需的時間格式,now 是2015 09 05 12 33 33,然後變為20150905...