sql按月统计数量和按月累加统计数量

1、简单的,按月统计数量

SELECT CREATE_DATE, DATE_FORMAT(CREATE_DATE, ‘%Y-%m‘) AS month
    , COUNT(*) AS sum
FROM pt_user
GROUP BY month;

2、按月累加统计数据

SELECT a.month, SUM(b.total) AS total
FROM (
    SELECT DATE_FORMAT(CREATE_DATE, ‘%Y-%m‘) AS month, SUM(sum) AS total
    FROM (
        SELECT CREATE_DATE, DATE_FORMAT(CREATE_DATE, ‘%Y-%m‘) AS month
            , COUNT(*) AS sum
        FROM pt_user
        GROUP BY month
    ) ptuser
    GROUP BY month
) a
    JOIN (
        SELECT DATE_FORMAT(CREATE_DATE, ‘%Y-%m‘) AS month, SUM(sum) AS total
        FROM (
            SELECT CREATE_DATE, DATE_FORMAT(CREATE_DATE, ‘%Y-%m‘) AS month
                , COUNT(*) AS sum
            FROM pt_user
            GROUP BY month
        ) ptuser
        GROUP BY month
    ) b
    ON a.MONTH >= b.MONTH
GROUP BY a.MONTH
ORDER BY a.month;

3、多字段按月累加统计(eg:按租户统计累加每月增长数量)

SELECT a.ORGAN_ID, a.month, SUM(b.total) AS total
FROM (
    SELECT ORGAN_ID, DATE_FORMAT(CREATE_TIME, ‘%Y-%m‘) AS month
        , SUM(sum) AS total
    FROM (
        SELECT ORGAN_ID, CREATE_TIME, DATE_FORMAT(CREATE_TIME, ‘%Y-%m‘) AS month
            , COUNT(*) AS sum
        FROM pt_user
        GROUP BY month
    ) ptuser
    GROUP BY ORGAN_ID, month
) a
    JOIN (
        SELECT ORGAN_ID, DATE_FORMAT(CREATE_TIME, ‘%Y-%m‘) AS month
            , SUM(sum) AS total
        FROM (
            SELECT ORGAN_ID, CREATE_TIME, DATE_FORMAT(CREATE_TIME, ‘%Y-%m‘) AS month
                , COUNT(*) AS sum
            FROM pt_user
            GROUP BY month
        ) ptuser
        GROUP BY ORGAN_ID, month
    ) b
    ON a.ORGAN_ID = b.ORGAN_ID
        AND a.MONTH >= b.MONTH
GROUP BY a.MONTH
ORDER BY a.ORGAN_ID, a.month;

原文地址:https://www.cnblogs.com/wanglu/p/8954409.html

时间: 2024-10-22 04:42:45

sql按月统计数量和按月累加统计数量的相关文章

【统计商户24个月连续流水总月数存储过程】

[统计商户24个月连续流水总月数存储过程]删除存储过程SQL> drop procedure checklen; Procedure dropped创建存储过程SQL> CREATE OR REPLACE PROCEDURE checklen(val in varchar2,resultval out number) as    maxlen number;    nowlen number;    begin    maxlen := 0;    nowlen := 0;        fo

MySQL 统计过去12个月的数据(包括本月)

1.问题 需要统计过去12个月的数据,如现在是2015年4月,那么我们需要统计从2014年5月到2015年4月的数据情况.而这12个月中,如果这个月没有数据的,则统计为0. 原始数据表如下图,数据是按分钟存储的.也就是说要统计每个月一共有多少条body_infared大于0的数据. 2.处理过程 2.1 获取12个月到现在的数据 select * from device_data t where DATE_FORMAT(t.time,'%Y-%m')> DATE_FORMAT(date_sub(

Mysql 分别按月, 日为组group,进行统计排序order

在数据库中我们经常用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

人月神话札记之人月神话

前言:美食的烹饪需要时间,那么稍等片刻,你将享用更多的美味.缺乏合理的进度安排是造成项目滞后的重要原因,因素有以下内容: - 对估算技术缺乏有效的研究 - 进度和工作量混淆,就是说人员和时间可以转换 - 对自己的估算缺乏信心 - 缺乏信心 - 对进度缺少跟踪和监督,所以站立会和燃尽图至关重要 - 意识到进度偏移时,第一个反应是增加人力,而这时大多数情况如同火上浇油,火越来越大,需要的汽油却越来越多 乐观主义 书中说,编程人员都是乐观主义者,我想,在国内,需求者比编程人员更"乐观",他们

SQL集合运算参考及案例(二):树形节点数量逐级累计汇总

问题描述: 我们经常遇到这样一个问题,类似于面对一个树形结构的物料数据,需要将库存中每一种物料数量汇总到物料上展示出来:或者说组织机构是一棵树,我们需要统计每一个节点上的人员数量(含下级节点的累计数量).在此将解决的核心部分抽取出来. 因为是树形结构我们需要用到CTE的递归定义.CTE是一种十分优雅的存在,CTE所带来最大的好处是代码可读性的提升,这是良好代码的必须品质之一.使用递归CTE可以更加轻松愉快的用优雅简洁的方式实现复杂的查询.更重要的是标准的SQL是工作在DB关系运算引擎上,而游标等

一队老耗子,每个月都生一对小耗子,小耗子长3个月,第四个月开始变成老耗子开始生, // 假设所有耗子都不死,请问20个月之后共有多少只耗子?

一队老耗子,每个月都生一对小耗子,小耗子长3个月,第四个月开始变成老耗子开始生,假设所有耗子都不死,请问20个月之后共有多少只耗子? public class 计算老鼠数量 { public static void main(String[] args) { // 4.一队老耗子,每个月都生一对小耗子,小耗子长3个月,第四个月开始变成老耗子开始生, // 假设所有耗子都不死,请问20个月之后共有多少只耗子?// int old = 2, first = 0,second = 0,third =

传iWatch 将在7月投入生产,10月出货,支持无线充电、触控、测量脉搏

今天又有关于 iWatch 的传言传出.据路透社的线人消息称,台湾的广达电脑(Quanta Computer Inc.)将于 7 月开始生产 iWatch,10 月出货,预计推出后首年的出货量为 5000 万支. 配置方面,iWatch 的屏幕框架偏矩形,对角线距离 2.5 英寸,镜面稍稍凸起:支持触控及无线充电,此外,iWatch 还搭载了可测用户脉搏的传感器. 合作厂商方面,广达将负责至少七成设备的最后组装工作,LG Display Co Ltd 独家供应首批成品的屏幕,新加坡的一家名为 H

香蕉派(banana pi )2015年10月 13 号至10月16号参加香港贸发局香港秋季电子

香蕉派(banana pi )将于2015年10月 13 号至10月16号参加香港贸发局香港秋季电子产品展, 欢迎各位前来参观指导 展会名称:香港贸发局香港秋季电子产品展2015时间: 2015年10月13号--10月16号 展台编号:3C-A38地址: 香港湾仔博览道1号香港会议展览中心 期待您的到来!!

消息称Apple Watch将于3月发售 零售员工2月中旬开始培训

消息人士称,苹果已经完成了Apple Watch软件的开发.苹果计划3月底正式发售 Apple Watch.此前,苹果提到Apple Watch将于2015年初正式发售.苹果零售高级副总裁 Angela Ahrendts 曾告知员工,Apple Watch 将于今年春季发售,也就是中国新年之后.根据很多消息人士,苹果目前正计划为Apple Store 零售店员工提供专门的培训计划.美国地区多家 Apple Store 的代表会去苹果Cupertino 或Austin营地办公室,了解Apple W