mysql - 使用空值计算增长率

标签 mysql sql database

我有一个包含以下列的表格:国家、年份(从 2005 年到 2015 年的 10 列)以及国家名称,以及每年代表 GDP 的百分比数值。

我正在尝试计算从 2005 年到 2015 年的增长率,但我的数据来自联合国网站,因此不完整 - 它具有空值。我想知道如何在考虑空值的同时计算 SQL 的增长率?

最佳答案

如果我错过了这个问题,我还在学习中,非常抱歉。想把前一年和后一年的平均值跑到null值得到一个插值来填充,比如下面的

UPDATE [table1]
SET [GDP_YEAR_N] = 
CASE WHEN [GDP_YEAR_N-1] IS NOT NULL AND [GDP_YEAR_N+1] IS NOT NULL
THEN AVG(SELECT GDP_YEAR_N-1,GDP_YEAR_N+1 FROM [TABLE1] T WHERE T.country =
O.Country ) END 
FROM [Table1] O
WHERE [GDP_YEAR_N] IS NULL

否则,您可以忽略数据中的空值。如果您正在绘制数据图表,则可以根据前几年和后几年的差异推断出一个值。如果有人有更聪明的想法请告诉我,我也很感兴趣

关于mysql - 使用空值计算增长率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34034027/

相关文章:

MySQL SELECT 空白字段

mysql - 这是跟踪每日观看次数的好方法吗?

mysql - 抽象数据库设计。

asp.net - 在旧的胖客户端数据库上放置一个新的 Web 界面

mysql - 我怎样才能加快这个MySQL查询?

php - Insert Into on Duplicate Update 给我创建了一个不需要的行

php - Laravel:如何用 Eloquent 方式表达 HAVING COUNT

mysql - 我想提取同一个表中 2 列的不同值以及 SQL 中这些唯一值的关联唯一值列

mysql - 在mysql中设置顺序选择

java - 将一个大表从 MS SQL 移动到无 SQL 数据库