在数据库中我们经经常使用sql语句对表进行简单的统计排序,对于日期字段。我们能够简单的对其进行order。

对于复杂一点的能够按日期中的年。月,日分别进行group,order。

按年份进行group,统计排序:

SELECT YERA(established_time)  ,COUNT(*) AS num <span style="font-size: 13.75px; font-family: Arial, Helvetica, sans-serif;">FROM `table_record` GROUP BY YEAR (established_time)</span>

按月份进行group。统计排序:

方法一:简单有用

SELECT YEAR(established_time) AS 'year' , MONTH(established_time) AS 'month' , COUNT(*) AS 'count'
FROM `table_record`
GROUP BY YEAR (established_time) DESC, MONTH(established_time)

效果:

year   month   count

------  ------  ------- 

2014       1      8320  

2014       2      5837  

2014       3     25069  

2014       4     29820  

2014       5     25060 

2014       6     17615  

2014       7         1  

2013       1      9114  

2013       2      4258

方法二:利用 MySql内置字符串连接函数
CONCAT(str1, str2, ...,str3) 。

SELECT  CONCAT(YEAR(established_time),',',MONTH( established_time)) AS data_time ,COUNT(*) AS num
FROM `table_record`
#group by data_time
GROUP BY YEAR(established_time) DESC,MONTH( established_time)

效果:

data_time
    num   

---------  -------- 

2014,1         8320 

2014,2         5837 

2014,3        25069

2014,4        29910

2014,5        25018

2014,6        17347

2014,7            1   

2013,1         9114

2013,2         4258

2013,3         8047

注意这里不要用:

SELECT  YEAR(established_time)+MONTH( established_time) as data_time 

这是错误的,它会造成2010+1=2011的这种错误。

此外,若只用以下语句,是统计的是多年来每月的数据。

SELECT  MONTH(established_time) AS 'month' , COUNT(*) AS 'count'
FROM `tb_gongshangju_record_beijing` GROUP BY MONTH(established_time) DESC

效果例如以下:

month
  count  

------  --------

    12     44952

    11     49720

    10     38587

     9     48967

     8     52874

     7     54082

     6     69532

     5     76999

     4     87289

     3     85249

     2     39997

     1     49017

(NULL)     34456

按日期day进行group,统计排序


SELECT YEAR(established_time) AS 'year' , MONTH(established_time) AS 'month' ,DAY(established_time) AS 'day', COUNT(*) AS 'count'
FROM `table_record`
WHERE table_record.`established_time` >= '2014-01-01'
GROUP BY YEAR (established_time) DESC, MONTH(established_time) DESC ,DAY(established_time) DESC

Mysql 分别按月, 日为组group,进行统计排序order的更多相关文章

  1. MySql按周/月/日分组统计数据的方法

    知识关键词:DATE_FORMAT select DATE_FORMAT(create_time,'%Y%u') weeks,count(caseid) count from tc_case grou ...

  2. MySql 按周/月/日统计数据的方法

    知识关键词:DATE_FORMAT  select DATE_FORMAT(create_time,'%Y%u') weeks,count(caseid) count from tc_case gro ...

  3. JZOJ2020年8月11日提高组T4 景点中心

    JZOJ2020年8月11日提高组T4 景点中心 题目 Description 话说宁波市的中小学生在镇海中学参加计算机程序设计比赛,比赛之余,他们在镇海中学的各个景点参观.镇海中学共有n个景点,每个 ...

  4. JZOJ2020年8月11日提高组T3 页

    JZOJ2020年8月11日提高组T3 页 题目 Description 战神阿瑞斯听说2008年在中华大地上,将举行一届规模盛大的奥林匹克运动会,心中顿觉异常兴奋,他想让天马在广阔的天空上,举行一场 ...

  5. JZOJ2020年8月11日提高组T2 宝石

    JZOJ2020年8月11日提高组T2 宝石 题目 Description 见上帝动了恻隐之心,天后也想显示一下慈悲之怀,随即从口袋中取出一块魔术方巾,让身边的美神维纳斯拿到后堂的屏风上去试试,屏风是 ...

  6. JZOJ2020年8月11日提高组T1 密码

    JZOJ2020年8月11日提高组T1 密码 题目 Description 在浩浩茫茫的苍穹深处,住着上帝和他的神仆们,他们闲谈着下界的凡人俗事,对人世间表现的聪明智慧,大加赞赏.今天他们正在观赏大地 ...

  7. JZOJ2020年8月11日提高组反思

    JZOJ2020年8月11日提高组反思 T1 看到题 啊这?! 我看错了吗??? 我理解错题了吗?? 好吧没有-- 高精度模板题,不用多说 T2 看到这种矩阵的问题 以为是前缀和搞事情 结果呢 扫描线 ...

  8. 【SHOI2008】JZOJ2020年9月5日提高组 循环的债务

    CSP-2020倒计时:36天 [SHOI2008]JZOJ2020年9月5日提高组 循环的债务 题目 Description Alice.Bob和Cynthia总是为他们之间混乱的债务而烦恼,终于有 ...

  9. JZOJ2020年9月5日提高组反思

    JZOJ2020年9月5日提高组反思 T1 考试的时候没有头绪,就打了个暴力,愉快的拿到了10分的\(impossible\) 正解是\(DP\),设\(f[i][j][k]\)表示地\(i\)种币值 ...

随机推荐

  1. Leetcode_num3_Same Tree

    题目: Given two binary trees, write a function to check if they are equal or not. Two binary trees are ...

  2. andorid 开发笔记 -- 问题与解决

    1. SQLiteDataBase 中 TimeStamp 转化为 Date 的问题:java.text.ParseException: Unparseable date: "Sun Jan ...

  3. JavaScript 中的事件设计

    1. 事件绑定的几种方式  主要介绍一下 最常用的事件设计 其他就稍微带过. 直接在代码里面添加onclick指定函数名字. B) 在JS代码中通过dom元素的onclick等属性 这种做法this表 ...

  4. Android中的菜单

    本文参考自官方文档:https://developer.android.com/guide/topics/ui/menus.html Android为了维护app之间一个统一的操作习惯,提供了Menu ...

  5. zookeeper应用——集中配置管理系统的实现

    http://blog.csdn.net/huangfengxiao/article/details/8844239

  6. JavaScript 函数方法 - bind()

    Function.prototype.bind() ECMAScript5中新增的方法,但是在ECMAScript3可以通过模仿实现其方法作用 作用: bind() 方法会创建一个新函数,当这个新函数 ...

  7. HTTP get、post请求

    Post请求: string postData = "user=123&pass=456"; // 要发放的数据 byte[] byteArray = Encoding.U ...

  8. 大家来找茬-SpringMVC中Tomcat正常启动,始终访问不了Controller,出404错

    创建了一个空的SpringMVC项目,Tomcat可以正常启动,但是运行的时候,始终进不了Controller,并且报404错误. 百度各种查,结果也是查不到原因.各个群里面各种求,各种贴源码,也没有 ...

  9. #能力开放平台系列-Fiddler访问Rest服务

    问题 最近开发能力开放平台,需要将Dubbo服务转换成Rest服务,虽然转换很成功(后续文档会写出如何将Dubbo服务转换成Rest接口),但是调试起来特别的麻烦. 解决方案: Fiddler解决方案 ...

  10. linux 下配置mysql区分大小写(不区分可能出现找不到表的情况)怎么样使用yum来安装mysql

    Linux 默认情况下,数据库是区分大小写的:因此,要将mysql设置成不区分大小写 在my.cof 设置 lower_case_table_names=1(1忽略大小写,0区分大小写) 检查方式:在 ...