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;
sql按月统计数量和按月累加统计数量的更多相关文章
- SQL集合运算参考及案例(二):树形节点数量逐级累计汇总
问题描述: 我们经常遇到这样一个问题,类似于面对一个树形结构的物料数据,需要将库存中每一种物料数量汇总到物料上展示出来:或者说组织机构是一棵树,我们需要统计每一个节点上的人员数量(含下级节点的累计数量 ...
- 宁波Uber优步司机奖励政策(8月24日到8月30日)
本周奖励: 8月24日-8月30日: 滴滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http:// ...
- JavaScript时间处理之几个月前或几个月后的指定日期
在平常项目开发过程中,经常会遇到需要在JavaScript中处理时间的情况,无非两种(1,逻辑处理 2,格式转换处理).当然要说相关技术博,园子里闭着眼睛都能抓一把,但是我要做的是:既然有幸被我碰到 ...
- 【¥200代金券、iPad等您来拿】 阿里云9大产品免费公测#10月9日-11月6日#
#10.09-11.06#200元代金券.iPad大奖, 9大产品评测活动! 亲爱的阿里云小伙伴们: 云产品的多样性(更多的云产品)也是让用户深度使用云计算的关键.今年阿里云产品线越来越丰富,小云搜罗 ...
- SQL Server调优系列进阶篇 - 深入剖析统计信息
前言 经过前几篇的分析,其实大体已经初窥到SQL Server统计信息的重要性了,所以本篇就要祭出这个神器了. 该篇内容会很长,坐好板凳,瓜子零食之类... 不废话,进正题 技术准备 数据库版本为SQ ...
- 裸辞两个月,海投一个月,从Android转战Web前端的求职之路
前言 看到这个标题的童鞋,可能会产生两种想法: 想法一:这篇文章是标题党 想法二:Android开发越来越不景气了吗?前端越来越火了吗? 我一向不喜欢标题党,标题中的内容是我的亲身经历.我是2016年 ...
- C语言之输入月收入,输出该月应纳税额-2019(简易版)
#include<stdio.h> #include<stdlib.h> #include<string.h> #define s1 0.03 //税率b < ...
- 利用MySQL统计一列中不同值的数量方法示例
前言 本文实现的这个需求其实十分普遍,举例来说,我们存在一个用户来源表,用来标记用户从哪个渠道注册进来.表结构如下所示… 其中 origin 是用户来源,其中的值有 iPhone .Android . ...
- SQL Server 调优系列进阶篇 - 深入剖析统计信息
前言 经过前几篇的分析,其实大体已经初窥到SQL Server统计信息的重要性了,所以本篇就要祭出这个神器了. 该篇内容会很长,坐好板凳,瓜子零食之类... 不废话,进正题 技术准备 数据库版本为SQ ...
随机推荐
- 三,mysql优化--sql语句优化之索引一
1,需求:如何在一个项目中,找到慢查询的select,mysql数据库支持把慢查询语句,记录到日志中.供程序员分析.(默认不启用此功能,需要手动启用) 修改my.cnf文件(有些地方是my.ini) ...
- ReentrantLock获取到非公平锁的源码
/** * Performs lock. Try immediate barge, backing up to normal * acquire on failure. */ final void l ...
- request.getParameter("name")获取参数为null和空字符串的区别
1.获取到的值为空字符串 当url里有name属性,但是没有值的时候,后台用request.getParameter("name")获取到的是空字符串 2.获取到的值为null 当 ...
- iOS —— GCD 详解
一.什么是GCD Grand Central Dispatch (强大的中枢调度器) ,是异步执行任务的技术之一.纯C语言,有很多强大的函数. 二.GCD的优势 (1)GCD是苹果公司为多核并行运算提 ...
- javascript保存excel
function saveToExcel() { var cind=1; try { var xls = new ActiveXObject ("Excel.Application" ...
- Mac 10.12下iTerm2使用lrzsz上传下载文件
1.下载脚本: cd /usr/local/bin wget https://raw.githubusercontent.com/mmastrac/iterm2-zmodem/master/iterm ...
- RHCE 学习结构
本文内容为本站的 blog 链接 第一章 安装初体验 第二章 访问系统 2.1 基于图形化界面访问 2.2 基于文本访问 2.3 用户管理 第三章 文件系统 3.1 Linux 文件系统 ...
- 【Java并发编程】:内存可见性
加锁(synchronized同步)的功能不仅仅局限于互斥行为,同时还存在另外一个重要的方面:内存可见性.我们不仅希望防止某个线程正在使用对象状态而另一个线程在同时修改该状态,而且还希望确保当一个线程 ...
- .gitignore释疑
自己总结: *.a--匹配任意路径下的.a文件 a/--匹配任意路径下的a文件夹 a/*--匹配根目录下的文件夹a下的任意文件(等同于 /a/* 或 /a/) ----一般情况下不会有这种写法 /a ...
- Android 开发服务类 04_ServletForPOSTMethod
ServletForPOSTMethod 业务类 package com.wangjialin.internet.servlet; import java.io.IOException; import ...