SQL案例分析:美联储降息前后的复利差距

当地时间 9 月 18 日,美国联邦储备委员会宣布,将联邦基金利率目标区间下调 50 个基点到 4.75% 至 5.00% 的水平,此前的利率目标区间为 5.25% 至 5.50%。这是美联储自 2020 年 3 月以来首次降息。

50 个基点不多也不少,那么具体会有多大差异呢?我们通过一个 SQL 查询计算五年期的复利给大家比较一下降息前后的差距。

复利(Compound Interest)是一种计算利息的方法,其特点是将前一期的本金和利息一起作为下一期的本金来计算利息。这种方式使得利息在后续期间内产生额外的利息,从而实现资金的快速增长。简单来说,复利就是"利滚利"的过程。

首先,我们通过递归查询(通用表表达式)计算本金为 100 万,年利率为 5.50% 时的复利:

sql 复制代码
WITH RECURSIVE investment(principal, total, years) AS (
  SELECT 1000000.0, 1000000.0*(1+0.055), 1 -- 第一年投资收益
  UNION ALL 
  SELECT total, total*(1+0.055), years+1 -- 第N年投资收益
  FROM investment
  WHERE years < 5
)
SELECT * FROM investment;

principal           |total                  |years|
--------------------+-----------------------+-----+
           1000000.0|            1055000.000|    1|
         1055000.000|         1113025.000000|    2|
      1113025.000000|      1174241.375000000|    3|
   1174241.375000000|   1238824.650625000000|    4|
1238824.650625000000|1306960.006409375000000|    5|

其中,WITH RECURSIVE 定义了一个递归查询;investment 是一个临时表,存储了每年本金以及计算复利之后的本息合计。从查询结果可以看出,年利率为 5.50% 时五年后的本息合计约为 1306960。

接下来我们比较降息前后的复利差距:

sql 复制代码
WITH RECURSIVE investment(principal_before, total_before, principal_after, total_after, years) AS (
  SELECT 1000000.0, 1000000*(1+0.055), 1000000.0, 1000000*(1+0.05), 1 -- 第一年投资收益
  UNION ALL 
  SELECT total_before, total_before*(1+0.055), total_after, total_after*(1+0.05), years+1 -- 第N年投资收益
  FROM investment
  WHERE years < 5
)
SELECT principal_before, total_before, principal_after, total_after, years,
       total_before - total_after AS diff
FROM investment;

principal_before    |total_before           |principal_after |total_after       |years|diff                 |
--------------------+-----------------------+----------------+------------------+-----+---------------------+
           1000000.0|            1055000.000|       1000000.0|        1050000.00|    1|             5000.000|
         1055000.000|         1113025.000000|      1050000.00|      1102500.0000|    2|         10525.000000|
      1113025.000000|      1174241.375000000|    1102500.0000|    1157625.000000|    3|      16616.375000000|
   1174241.375000000|   1238824.650625000000|  1157625.000000|  1215506.25000000|    4|   23318.400625000000|
1238824.650625000000|1306960.006409375000000|1215506.25000000|1276281.5625000000|    5|30678.443909375000000|

该查询同时计算了年利率为 5.50% 和年利率为 5.00% 时的复利。投资本金 100 万时,五年后两者的本息合计差距约为 30678。

相关推荐
BTU_YC4 小时前
Neo4j查询计划完全指南:读懂数据库的“执行蓝图“
数据库·neo4j
非极限码农4 小时前
Neo4j图数据库上手指南
大数据·数据库·数据分析·neo4j
mit6.8244 小时前
[C# starter-kit] 命令/查询职责分离CQRS | MediatR |
java·数据库·c#
苏打水com5 小时前
数据库进阶实战:从性能优化到分布式架构的核心突破
数据库·后端
莫叫石榴姐5 小时前
SQL百题斩:从入门到精通,一站式解锁数据世界
大数据·数据仓库·sql·面试·职场和发展
shan~~6 小时前
linux达梦数据库操作
linux·数据库·chrome
武文斌776 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
CoderIsArt6 小时前
SQLite架构
数据库·sqlite
lixora7 小时前
银河麒麟高级服务器操作系统(ADM64 版)V10(SP1)搭建 Oracle 19c RAC
数据库
郝学胜-神的一滴7 小时前
使用Linux的read和write系统函数操作文件
linux·服务器·开发语言·数据库·c++·程序人生·软件工程