Mysql 統計最近七天 一月內的資料並分組

2021-10-07 17:41:32 字數 1374 閱讀 5898

第一步:查詢一定範圍內的資料、數量

查詢最近一天的資料:

select * from table where to_days(column_time) = to_days(now());

select * from table where date(column_time) = curdate();

查詢最近一周的資料

select * from "table"  where date_sub(curdate(), interval 7 day) <= date("column_time");
語句解析

① :current_date:以『yyyy-mm-dd』或yyyymmdd格式返回今天日期值,取決於函式在乙個字串還是數字上下文被使用。select curtime();

② :date_sub(date,interval expr type) ,進行日期減少的操作,可以精確到秒

查詢最近乙個月的資料:

select * from table  where date_sub(curdate(), interval interval 1 month) <= date(column_time);
第二步:統計一定範圍內,每個單位內的數量【單位可以天,月、周、年、等】

1)按天統計:

select date_format(start_time,'%y%-m-%d') days,count(*) count from ***x group by days;
2)按周統計:

select date_format(start_time,'%y-%u') weeks,count(*) count from ***x group by weeks;
3)按月統計:

select date_format(start_time,'%y-%m') months,count(*) count from ***x group by months;
第三步:統計最近七天內的資料並按天分組

思路:將查詢範圍的資料作為一張虛表,也就是 統計sql的資料來源即可。

select

date_format( "時間列名", '%y-%m-%d' ) days,

count(*) count

from

( select * from "表名"

where date_sub( curdate( ), interval 7 day ) <= date( "時間列名") ) as "表別名"

group by

days;

統計最近七天的資料訪問量 mysql

最近做了乙個日誌功能,當使用者訪問介面後,會記錄哪個介面,返回結果等資訊,現在想做乙個統計最近七天的訪問介面數量,之前想的有些複雜。首先獲取今天的日期,根據日期查詢數量,再查詢出近七天的數量。後來發現sql可以直接解決,curdate 函式返回當前的日期。curdate 直接返回當天 查詢最近七天的...

查詢最近七天的資料統計

select count 0 count,date format operatetime,m d time,case dayofweek operatetime when 1 then 星期日 when 2 then 星期一 when 3 then 星期二 when 4 then 星期三 when ...

MySQL 統計當天 一周 一月等的資料

now 函式返回當前的日期和時間 執行sql語句時的時間 select now curdate 函式返回當前的日期 select curdate curtime 函式返回當前的時間 select curtime current date 函式返回當前的日期 select current date s...