mysql连续聚合原理与用法实例分析

 更新时间:2019年12月27日 10:41:06   作者:雪山飞猪  
这篇文章主要介绍了mysql连续聚合原理与用法,结合实例形式分析了mysql连续聚合的原理、功能、使用方法及相关操作注意事项,需要的朋友可以参考下

本文实例讲述了mysql连续聚合原理与用法。分享给大家供大家参考,具体如下:

连续聚合是按时间顺序对有序数据进行聚合的操作。

在下面的救示例中将使用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部分数据

下面根据EmpOrders表讨论3个连续聚合的问题:累积、滑动、年初至今。

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL查询技巧大全》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总

希望本文所述对大家MySQL数据库计有所帮助。

相关文章

  • Mysql使用kill命令解决死锁问题

    Mysql使用kill命令解决死锁问题

    这篇文章主要介绍了Mysql使用kill命令解决死锁问题的相关资料,需要的朋友可以参考下
    2017-06-06
  • Mysql表数据比较大情况下修改添加字段的方法实例

    Mysql表数据比较大情况下修改添加字段的方法实例

    最近遇到的一个问题,需要在一张1800万数据量的表中添加加一个字段,所以这篇文章主要给大家介绍了关于Mysql表数据比较大情况下修改添加字段的方法,需要的朋友可以参考下
    2022-06-06
  • MySQL学习笔记5:修改表(alter table)

    MySQL学习笔记5:修改表(alter table)

    我们在创建表的过程中难免会考虑不周,因此后期会修改表修改表需要用到alter table修改表语句,接下来详细介绍,需要的朋友可以参考下
    2013-01-01
  • mysql把主键定义为自动增长标识符类型

    mysql把主键定义为自动增长标识符类型

    这篇文章主要介绍了mysql中如何把主键定义为自动增长标识符类型,下面有个不错的示例,大家可以参考下
    2014-07-07
  • MySQL性能参数详解之Max_connect_errors 使用介绍

    MySQL性能参数详解之Max_connect_errors 使用介绍

    这篇文章主要介绍了MySQL性能参数详解之Max_connect_errors 使用介绍,需要的朋友可以参考下
    2016-05-05
  • 详细解读MySQL的触发器trigger

    详细解读MySQL的触发器trigger

    触发器是由事件来触发某个操作,这些事件包括INSERT、UPDATE和DELETE语句。如果定义了触发程序,当数据库执行这些语句的时候就会激发触发器执行相应的操作,需要的朋友可以参考下
    2023-05-05
  • mysql中的json处理方案

    mysql中的json处理方案

    这篇文章主要介绍了mysql中的json处理方案,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08
  • MySQL通过日志恢复数据的操作步骤

    MySQL通过日志恢复数据的操作步骤

    在MySQL中恢复误删除的数据是一个常见但复杂的问题,具体的方法取决于几个因素,包括您是否有备份、使用的是哪种存储引擎(如InnoDB或MyISAM)、以及您的数据库配置等,本文给大家介绍了MySQL通过日志恢复数据的操作步骤,需要的朋友可以参考下
    2024-12-12
  • MySQL中的SQL标准语句详解

    MySQL中的SQL标准语句详解

    SQL(Structured Query Language)是“结构化查询语言”,它是对关系型数据库的操作语言。虽然SQL可以用在所有关系型数据库中,但很多数据库还都有标准之后的一些语法,我们可以称之为方言
    2022-09-09
  • cmd连接mysql的方法详解

    cmd连接mysql的方法详解

    本篇文章是对cmd连接mysql的方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06

最新评论