Mysql 按年度、季度、月度、周、日SQL统计查询

mysql没有提供unix时间戳的专门处理函数,所以,如果遇到时间分组,而你用的又是整型unix时间戳,则只有转化为mysql的其他日期类型!

FROM_UNIXTIM()将unix时间戳转为datetime等日期型!

特殊情况:createtime为int时,写法如下

select * from paycord where month(FROM_UNIXTIME(createtime, ‘%y-%m-%d‘)) = month(curdate()) and year(FROM_UNIXTIME(createtime, ‘%y-%m-%d‘))
= year(curdate())

一、年度查询

查询 本年度的数据

SELECT *

FROM blog_article

WHERE year( FROM_UNIXTIME( BlogCreateTime ) ) = year( curdate( ))

二、查询季度数据

查询数据附带季度数

SELECT ArticleId, quarter( FROM_UNIXTIME( `BlogCreateTime` ) )

FROM `blog_article`

其他的同前面部分:查询 本季度的数据

SELECT *

FROM blog_article

WHERE quarter( FROM_UNIXTIME( BlogCreateTime ) ) = quarter( curdate( ))

三、查询月度数据

本月统计(MySQL)

select * from booking where month(booking_time) =

month(curdate()) and year(booking_time) = year(curdate())

本周统计(MySQL)

select * from spf_booking where month(booking_time) =

month(curdate()) and week(booking_time) = week(curdate())

四、时间段

N天内记录

WHERE TO_DAYS(NOW()) - TO_DAYS(时间字段) <= N

当天的记录

where date(时间字段)=date(now())

where to_days(时间字段) = to_days(now());

查询一周:

select * from table   where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(column_time);

查询一个月:

select * from table where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(column_time);

查询‘06-03‘到‘07-08‘这个时间段内所有过生日的会员:

Select * From user Where

DATE_FORMAT(birthday,‘%m-%d‘) >= ‘06-03‘ and DATE_FORMAT(birthday,‘%m-%d‘)

<= ‘07-08‘;

统计一季度数据,表时间字段为:savetime

group by concat(date_format(savetime, ‘%Y ‘),FLOOR((date_format(savetime, ‘%m ‘)+2)/3))

select YEAR(savetime)*10+((MONTH(savetime)-1) DIV 3) +1,count(*)

from yourTable

group by YEAR(savetime)*10+((MONTH(savetime)-1) DIV 3) +1;

五、分组查询

1、年度分组

2、月度分组

3、先按年度分组,再按月度分组

4、按年月分组

SELECT count(ArticleId), date_format(FROM_UNIXTIME( `BlogCreateTime`),‘%y%m‘) sdate  FROM `blog_article` group by sdate

结果:

count( ArticleId )     sdate

17     0901

11     0902

5     0903

6     0904

2     0905

1     0907

12     0908

6     0909

11     0910

3     0911

Mysql 按年度、季度、月度、周、日SQL统计查询

时间: 2024-11-07 21:45:11

Mysql 按年度、季度、月度、周、日SQL统计查询的相关文章

mysql按年度、季度、月度、周、日SQL统计查询

说明 1 2 3 4 5 SELECT YEAR('2014-10-29')   //2014 SELECT MONTH('2014-10-29')  //10 SELECT DAY('2014-10-29')  //29 SELECT QUARTER('2014-10-29')  //4  季度 SELECT DAYOFWEEK('2014-10-29') //4  星期 一.年度查询查询本年度的数据 1 2 3 SELECT * FROM blog_article WHERE year( F

my97datepicker 年,季度,月,周,日

1.选择年 <input id="d1212" class="Wdate" type="text" onfocus="WdatePicker({dateFmt:'yyyy年'})"/> 2.选择季度: <input id="yearNum"  onclick="WdatePicker({dateFmt:'yyyy年MM季度', isQuarter:true, isShowOK:f

mysql操作命令梳理(5)-执行sql语句查询即mysql状态说明

在日常mysql运维中,经常要查询当前mysql下正在执行的sql语句及其他在跑的mysql相关线程,这就用到mysql processlist这个命令了.mysql> show processlist;            //查询正在执行的sql语句mysql> show full processlist;       //查询正在执行的完整sql语句mysql> kill connection id           //停掉processlist查询出的某个线程,id是对应的

SQL——统计查询

数据表格如下:      我使用的是mysql数据库,因此相关的sql为 CREATE TABLE `stuscore` ( `id` int(11) NOT NULL auto_increment, `name` varchar(20) default NULL, `subject` varchar(20) default NULL, `score` varchar(20) default NULL, `stuid` varchar(10) default NULL, PRIMARY KEY 

TP SQL统计查询语法

获取今日订单总数和订单总金额 //fields区分出order_type不等于1的订单,订单金额money加运费order_freight合计 $fields = [ 'COUNT(1) as order_num', 'SUM(IF(order_type != 1, money + order_freight, 0)) as order_price' ]; //where区分统计今日订单,已付款pay_status状态 $where = [ [ 'create_time', 'between',

mysql按年度、季度、月度、周、日统计查询的sql语句

本文介绍一些mysql中用于查询的sql语句,包括按年度.季度.月度.周.日统计查询等,有需要的朋友,可以参考下. 一.年度查询 查询 本年度的数据 SELECT * FROM blog_article WHERE year( FROM_UNIXTIME( BlogCreateTime ) ) = year( curdate( )) 二.查询季度数据 查询数据附带季度数 SELECT ArticleId, quarter( FROM_UNIXTIME( `BlogCreateTime` ) )

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(caseid) count from tc_case group by days; select DATE_FORMAT(create_time,'%Y%m') month

sql server 查询日期中的常用语句, 例如本周第一天, 年内的第几周,有用

--本周第一天    SELECT DATEADD(Day,1-(DATEPART(Weekday,getdate())[email protected]@DATEFIRST-1)%7,getdate())   --or    select dateadd(wk, datediff(wk,0,getdate()), 0)   --本周第一天    select dateadd(wk, datediff(wk,0,getdate()), 6)      --上月第一天    SELECT CONV

python 3 mysql sql逻辑查询语句执行顺序

python 3 mysql sql逻辑查询语句执行顺序 一 .SELECT语句关键字的定义顺序 SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOIN <right_table> ON <join_condition> WHERE <where_condition> GROUP BY <group_by_list> HAVING <havin