MySQL按日期分组并统计截止当前时间的总数(实例教程)
MySQL按日期分组并统计截止当前时间的总数
建表语句
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0; -- ----------------------------
-- Table structure for t_reg
-- ----------------------------
DROP TABLE IF EXISTS `t_reg`;
CREATE TABLE `t_reg` (
`ID` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID编号',
`REG_TIME` datetime(0) NULL DEFAULT NULL COMMENT '时间',
`REG_COUNT` int(11) NULL DEFAULT NULL COMMENT '数量',
PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; -- ----------------------------
-- Records of t_reg
-- ----------------------------
INSERT INTO `t_reg` VALUES (1, '2019-05-01 08:08:12', 1);
INSERT INTO `t_reg` VALUES (2, '2019-05-02 00:09:09', 10);
INSERT INTO `t_reg` VALUES (3, '2019-05-02 13:08:08', 2);
INSERT INTO `t_reg` VALUES (4, '2019-05-03 15:08:05', 4);
INSERT INTO `t_reg` VALUES (5, '2019-05-03 17:08:08', 6);
INSERT INTO `t_reg` VALUES (6, '2019-05-16 21:01:12', 4);
INSERT INTO `t_reg` VALUES (7, '2019-05-03 05:08:09', 11); SET FOREIGN_KEY_CHECKS = 1;
表结构如下所示:REG_COUNT 表示当天新增的用户数

现在的需求是这样的:按每天分组,查询当天新增的用户总数和截止到当前时间新增的用户总数,结果如下:

SQL语句如下:
SELECT
reg_time,
min_total AS '小计',
@total := @total + min_total AS '总计'
FROM
( SELECT date( reg_time ) AS reg_time,
sum( reg_count ) AS min_total FROM t_reg GROUP BY date( reg_time ) ) AS temp,
( SELECT @total := 0 ) AS T1
ORDER BY
reg_time;
解释一下:SELECT @total := 0,,这句的意思是给临时变量@total设置值为0;
如此即可得出上面的结果满足需求.
MySQL按日期分组并统计截止当前时间的总数(实例教程)的更多相关文章
- mysql按日期分组统计数据
最近在做一个招聘网时,需要显示一个月内企业招聘信息的发布数量,按日期分组统计,刚开始是直接从源数据库表里面进行group by,但这样子就出现日期不连续的问题了,我想要的效果是,若当天没有数据,则显示 ...
- Mysql按日期分组(group by)查询统计的时候,没有数据补0的解决办法
转载自:http://blog.csdn.net/jie11447416/article/details/50887888 1.案例中的数据结构和数据如下 2.在没有解决的时候,是这样的 SELE ...
- 记录一个mysql按日期分组统计的查询
http://blog.csdn.net/llwan/article/details/7738991
- MySql按日期时间段进行统计(前一天、本周、某一天、某个时间段)
在mysql数据库中,常常会遇到统计当天的内容.例如,在user表中,日期字段为:log_time 统计当天 sql语句为: select * from user where date(log_tim ...
- mysql 按日期分组
select DATE_FORMAT(NOW(),'%Y%m%d') days,count(caseid) count from tc_case group by days; //date_forma ...
- mysql查询日期分组,不存在的补全0,做每天数据图表,根据日期,N天数往前查
SELECT IFNULL( DATA.count, 0 ) AS count, day_list.DAY AS createTime FROM ( SELECT DATE_FORMAT( creat ...
- mysql 操作日期函数【增加,减少时间】
详情链接:http://www.runoob.com/sql/func-date-add.html 定义和用法 DATE_ADD() 函数向日期添加指定的时间间隔. DATE_ADD(date,INT ...
- mysql生成日期的辅助表
为了解决mysql按日期分组查询统计的时候,没有数据补0.可以生成连续的时间表格来辅助查询* 生成按天的数据 * 每一个小时为一个分段 生成如下辅助表 *代码如下 CREATE TABLE num ( ...
- MYSQL 二次筛选,统计,最大值,最小值,分组,靠拢
HAVING 筛选后再 筛选 SELECT CLASS,SUM(TOTAL_SCORES) FROM student_score GROUP BY CLASS HAVING SUM(TOTAL_SCO ...
随机推荐
- python接口自动化18-multipart/form-data上传多个附件
前言 reuqests上传一张图片到服务器,前面已经介绍过了,那么如何在提交BUG的时候,上传附件呢? 上传附件的时候,文件的name参数名称是一样的,python里面key是不可以重复的,又如何处理 ...
- zabbix的psk加密结合zabbix_get取值
转载:https://www.xj123.info/7386.html 参考文档:https://www.zabbix.com/documentation/3.0/manpages/zabbix_ge ...
- web workers 实例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Spring Boot+STOMP解决消息乱序问题
当我们使用Spring Boot+websocket进行前后端进行通信时,我们需要注意:服务器可以随时向客户端发送消息.默认的情况下,不保证:服务器发送的消息与到达客户端的消息的顺序是一致的.可能先发 ...
- Java精通并发-轻量级锁与重量级锁的变化深入详解
在上一次https://www.cnblogs.com/webor2006/p/11446129.html的理论的最后谈到了锁的演化,如下: 下面具体来阐述一下: 偏向锁:它是针对一个线程来说, 它的 ...
- Windows窗体控件实现内容拖放(DragDrop)功能
一.将控件内容拖到其他控件 在开发过程中,经常会有这样的要求,拖动一个控件的数据到另外一个控件中.例如将其中一个ListBox中的数据拖到另一个ListBox中.或者将DataGridView中的数据 ...
- 应该知道的linux命令
常用命令 1.在compose Bar下可以对多个服务器同时进行操作.选择To All Sessions 2. 查看JAVA进程: ps -ef | grep java ps auxf | grep ...
- 华硕ASUS U5800GE驱动
重要的触摸板 微软商店 ASUS Keyboard Hotkeys 设备管理器 人体学输入设备 ASUS Precision Touchpad (ScreenPad) Asus ScreenPad D ...
- 一文读懂后缀自动机 Suffix_Automata
原论文(俄文)地址:suffix_automata 原翻译(中文)地址:后缀自动机详解(DZYO的博客) Upd:强推浅显易懂(?)的SAM讲解 后缀自动机 后缀自动机(单词的有向无环图)--是一种强 ...
- IDEA激活码(直到2020年6月)
K6IXATEF43-eyJsaWNlbnNlSWQiOiJLNklYQVRFRjQzIiwibGljZW5zZWVOYW1lIjoi5o6I5p2D5Luj55CG5ZWGOiBodHRwOi8va ...