2025 年第一季度全国各省 GDP 初步核算数据已经陆续发布,我通过互联网收集了一些相关数据,下载链接:
https://github.com/dongxuyang1985/sql_in_action
https://gitcode.com/horses/sql_in_action
接下来我们使用 SQL 对这些数据进行一些分析。
Top 10
首先看一下 2025 年第一季度各省、直辖市、自治区 GDP 排名前 10 列表:
-- PostgreSQL语法
SELECT area_name, q1_2025, repeat('🔥', (q1_2025/2000)::int)
FROM gdp_data gd
WHERE q1_2025 IS NOT NULL
ORDER BY q1_2025 DESC
LIMIT 10;
考虑到部分省、直辖市、自治区的最新数据还没有公布,使用 WHERE 条件进行了过滤;repeat 函数用于打印🔥符号,其他数据库也有类似的函数;查询结果如下:
广东省、江苏省仍然是 T0 级别。
排名变化
使用相同的查询方式可以获得各省、直辖市、自治区 2024 年第四季度的排名,然后将两次排名进行比较,可以获得排名的同比变化情况。但是,如果我们使用窗口函数进行分析,可以更容易地实现相同的效果:
SELECT area_name, q1_2025, q4_2024,
rank() OVER (ORDER BY q1_2025 DESC) AS rank_2025,
rank() OVER (ORDER BY q4_2024 DESC) AS rank_2024,
rank() OVER (ORDER BY q4_2024 DESC) - rank() OVER (ORDER BY q1_2025 DESC) AS diff
FROM gdp_data gd
WHERE q1_2025 IS NOT NULL
ORDER BY q1_2025 DESC;
rank 函数是一个分析排名的窗口函数,rank_2025 代表 2025 年第一季度排名,rank_2024 代表 2024 年第四季度排名,两者的差值就是排名变化。
在排名前十的省份中,山东省上升了一名,浙江省下降了一名,河南省上升最多(4),上海市下降最多(4)。
同比增长
同比增长是指本期数据与上一年度或历史同期相比的增长,例如 2025 年第一季度的数据与 2024 年第一季度的数据相比增加的部分。以下查询分析了各省、直辖市、自治区 2025 年第一季度同比增长率(名义):
SELECT area_name, q1_2025, q1_2024,
(q1_2025 - q1_2024)/q1_2024*100 AS "同比增长率(%)"
FROM gdp_data gd
WHERE q1_2025 IS NOT NULL
ORDER BY 4 DESC;
西藏自治区增速最快,北京市和上海市紧随其后。