连续聚合是按时间顺序对有序数据进行聚合的操作。
在下面的救示例中将使用EmpOrders表,该表用于存放每位员工每月发生的订购数量。
运行如下 代码创建EmpOrders表并填充示例数据。
CREATE TABLE EmpOrders (
empid INT NOT NULL,
ordermonth DATE NOT NULL,
qty INT NOT NULL,test
PRIMARY KEY (empid,ordermonth)
);
查询order表和orderdetails表住EmpOrder表插入每个月的订单,sql语句如下(技巧是根据月分组)
INSERT INTO EmpOrders
SELECT a.employeeid,orderdate AS Order date,SUM(quantity) AS qty
FROM orders a
INNER JOIN orderdetails b
ON a.orderid=b.orderid
GROUP BY employid,DATE_FORMAT(orderdate,'%Y-m');
下面给出生成示例数据的php文件
<?php
$sql = "INSERT INTO emporders SELECT %s,'%s-%02d-01',%s;".'<br />';
$insert_sql = '';
for($empid=1;$empid<=8;$empid++)
{
for($year=2009;$year<=2015;$year++)
{
for($month=1;$month<=12;$month++)
{
$num = rand(20,800);
$insert_sql .= sprintf($sql,$empid,$year,$month,$num);
}
$insert_sql .= '<br />';
}
}
echo $insert_sql;
以下是员工订单表EmpOrder部分数据
aaarticlea/png;base64,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" alt="" />
下面根据EmpOrders表讨论3个连续聚合的问题:累积、滑动、年初至今。
- Oracle ->> 连续聚合
select id, grp_factor, sum (id) over( partition by grp_factor order by id rows between unbounded pre ...
- mysql计算连续天数,mysql连续登录天数,连续天数统计
mysql计算连续天数,mysql连续登录天数,连续天数统计 >>>>>>>>>>>>>>>>>& ...
- MySQL数据库聚合函数
+++++++++++++++++++++++++++++++++++++++++++标题:MySQL数据库聚合函数时间:2019年2月25日内容:MySQL数据库聚合函数重点:MySQL数据库聚合函 ...
- MySQL之聚合数据(AVG,COUNT,MAX,MIN,SUM)
1.首先我们需要了解下什么是聚合函数 聚合函数aggregation function又称为组函数. 认情况下 聚合函数会对当前所在表当做一个组进行统计. 2.聚合函数的特点 1.每个组函数接收一个参 ...
- MySQL 排错-解决MySQL非聚合列未包含在GROUP BY子句报错问题
排错-解决MySQL非聚合列未包含在GROUP BY子句报错问题 By:授客 QQ:1033553122 测试环境 win10 MySQL 5.7 问题描述: 执行类似以下mysql查询, SEL ...
- MySQL的聚合函数
MySQL的聚合函数 网站:https://www.runoob.com/mysql/mysql-functions.html 函数名 功能描述 count() 计数 sum() 求和 avg() 平 ...
- mysql 从聚合函数group by到sql_mode
说到group by, 想必大家都不陌生, 就是对查询的数据进行分组,我们可以通过该操作实现一些特殊需求,比如去重. 最近在项目中使用HQL:" from TSjrz where CBh = ...
- Mysql 分组聚合实现 over partition by 功能
mysql中没有类似oracle和postgreSQL的 OVER(PARTITION BY)功能. 那么如何在MYSQL中搞定分组聚合的查询呢 先说结论: 利用 group_concat + sub ...
- MySQL分组聚合group_concat + substr_index
场景:给予一张商品售卖表,表中数据为商品的售卖记录,假设表中数据是定时脚本插入的,每个时间段的商品售卖数量不同,根据此表找各个商品的最多售卖数量的数据. 1.数据表 CREATE TABLE `goo ...
随机推荐
- bootstrap的引用和注意事项
1,在https://v3.bootcss.com/getting-started/#download下载bootstrap的压缩包: 2,将压缩包解压到自己的工程文件中,会得到如下结果: 3,打开这 ...
- 微信小程序的自定义插件
第一步,创建一个页面和普通页面一样 第二不,在这个页面上进行对json配置, "component":true 第三不在需要插入的页面中进行设置 插入标签 <dialog i ...
- Day12 (黑客成长日记) 函数
一.递归函数: 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. #计算阶乘: def fact(n): if n == 1: return 1 return n ...
- python jieba库
https://www.cnblogs.com/snailclimb/p/9086433.html https://blog.csdn.net/codejas/article/details/8035 ...
- 使用@Autowird注入报空指针异常
new的对象不能调用此对象里面注入的其他类,如果想要调用注入的其他类,则此new的对象要使用@componet将此类注入. 原因:
- 实现ueditor的自动上传word中的……
UEditor的配置和使用(单独图片与文件上传) Word图片上传控件发布-Xproer.WordPaster ueditor 图片粘贴上传,实现图文粘贴,图片自动上传 打开工程: 文档的上传. 运行 ...
- js基础知识:字面量 关键字和保留字
js中的字面量概念我的理解就是:字体表面的常量 如:数字 100, 字符串 "ssss"或'ssss' 布尔值:false ,正则 以及null对象. 这些都是常量. 关键字: ...
- 避免docker异常重启容器挂掉的解决方法
Docker 升级或者重启容器不会被停掉然后重启的解决方法 在/etc/systemd/system/multi-user.target.wants/docker.service文件下添加配置 注意: ...
- Stacking Plates(存档待续.....(没有写思路和程序))
问题描述 盘子装运公司是一家网络零售商,顾名思义,是一家只销售盘子的公司.该公司销售的盘子由不计其数的生产厂商提供,品种是全宇宙最多的,为此公司的员工倍感自豪. 在最近的一次成本分析中,公司员工发现, ...
- Gigabyte Z170N-WIFI 黑苹果 10.12
简述 (此文在我的个人博客长期更新)[http://aiellochan.com/2018/02/11/play/Gigabyte-Z170N-WIFI-%E9%BB%91%E8%8B%B9%E6%9 ...