实现同比、环比计算的N种姿势 您所在的位置:网站首页 excel同比环比计算 实现同比、环比计算的N种姿势

实现同比、环比计算的N种姿势

2023-06-09 11:19| 来源: 网络整理| 查看: 265

种姿势

在做数据分析时,我们会经常听到同⽐、环⽐同⽐的概念。各个企业和组织在发布统计数据时,通常喜欢⽤同⽐、环⽐来和之前的历史数据

进⾏⽐较,⽤来说明数据的变化情况。例如,统计局公布2022年1⽉份CPI同⽐增长0.9%,环⽐增长0.6%。

实际中,在基于数据库的数据分析场景中,环⽐和同⽐是典型的复杂计算场景之⼀,特别是在Oracle等商业数据库的分析函数出现之前。以

MySQL为例,在8.0版本中才引⼊了Lag和Lead函数,这两个函数结合开窗函数有效的提⾼了同⽐、环⽐等复杂运算的实现效率。在5.x系

列版本中,MySQL需要依赖多次嵌套⼦查询和⾃关联才能实现此类计算。

我们以⼀个简单的例⼦,来分别看下,MySql 5.x和8.0是具体实现同⽐、环⽐计算的。

⽰例数据见表:

CREATE TABLE sales  (

  `

产品

ID` varchar(20),

   `

销售数量

` int(20) ,

  `

销售时间

` timestamp(6) NULL DEFAULT NULL

)

INSERT INTO sales VALUES ('C1001', 15, '2020-06-01 10:10:12');

INSERT INTO sales VALUES ('C1002',26, '2020-05-02 0:10:12');

INSERT INTO sales VALUES ('C1003', 21, '2020-04-03 0:10:12');

INSERT INTO sales VALUES ('C1003', 23, '2020-04-04 0:10:12');

INSERT INTO sales VALUES ('C1003', 0, '2020-03-05 0:10:12');

INSERT INTO sales VALUES ('C1001', 16, '2020-02-06 3:0:12');

INSERT INTO sales VALUES ('C1002', 32, '2020-01-07 0:10:12');

INSERT INTO sales VALUES ('C1001', 16, '2019-12-08 0:12:24');

INSERT INTO sales VALUES ('C1001', 32, '2019-06-09  0:12:24');



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有