同比增长率怎么算公式Excel(毛利率同比增长率怎么算公式)

好久没更新了,最近实在是太忙了,基本上天天和sql打交道。恰巧今天遇到了一个问题,在这里和大家分享一下,就是使用sql计算增长率的问题。

我的数据库中的原始数据是这样的:

year

value

2016

100

2017

200

2018

160

2019

180

2020

200

2021

240

但是我们前端需要展现的是一条折现,显示的是增长率,或者叫同比增长, 这个大家应该都知道吧,公式如下: (后一年数据 – 前一年数据) / 前一年的数据。 这个一开始确实难住了我,后来在网上找到了解决方案,理解过后感觉甚是经典,也分享给大家。

我们还是先来研究下公式吧, 我们假设今年的数据是 t1. 去年的数据是t2, 那么增长率为 (t1 – t2)/ t2 , 通过分解等价于 t1/t2 -1 ,这应该比较好理解吧。那么我们既然要用sql去实现他,当务之急,即使如何在我们的sql中获取今年和去年的数据,如果能够获得,我们我们就可以直接套用上面的公式即可。

我们怎么获取相邻两个年份的数据呢,其实我们我们可以用两张相同相同的表想关联,只不过让他们的关联条件不是我们常用的相等,而是进行错位关联。 说得比较抽象,我们直接看sql, 假设表名test ,年份字段year,值字段名value. sql如下:

select * from test t1 left join test t2 on t1.year = t2.year+1

我们通过一个left join关联相同的表,要注意条件是: t1.year = t2.year+1 , 这就是我们所说的错位关联。当t1.year=2018年时, t2.year就是2017年,这样t1和t2就代表了两个相邻年份的数据,有了两个相邻年份,我们就可以计算增长率了。

select t1.year, t1.value/t2.value-1 rate from 
test t1 left join test t2 on t1.year = t2.year +1
order by t1.year 
同比增长率怎么算公式Excel(毛利率同比增长率怎么算公式)

这就是计算增长率的方式。怎么样,你学会了么。

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 sumchina520@foxmail.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.vsaren.com/8359.html