我尝试使用按年(2012 - 2016年)标记的数据来计算复合年增长率。数据最初位于一列中,表示总人口,另一列表示年份。我已将2012年和2016年的数据分成两个单独的列,并尝试使用SQL来计算CAGR率((2016年的数据)/(2012年的数据)^(1/4)) - 1。
这是计算复合年增长率/累积增长的正确方法吗?我试过简单地使用两列数据,但因为它们不匹配并且有空值,所以它不起作用。如果您有任何想法,请告诉我。
答案 0 :(得分:0)
复合年增长率(CAGR)并不适合你想要做的事情。
通常情况下,如果您说,在基金中投资1000美元,并根据结束价值计算年度增长率,则会使用此项。
示例 - 如果您投资1000美元,并且在5年内价值5000美元:
( 5,000 / 1,000)1/5 - 1 = .37973 = 37.97%
如果我要在SQL Server中编写它,那将是:
SELECT SUM(POWER((5000.0/1000.0),(1.0/5.0))-1.0)
您可以将5000和1000替换为您要比较的特定列,或者您需要比较的一系列数据。
如果您详细说明问题,我会更新此答案。