前言
PostgreSQL 被称为"最先进的开源数据库",它的强大不止于基础 CRUD。窗口函数、CTE 递归查询和 JSONB 是 PG 中最让我印象深刻的三个进阶特性。学会它们,你的 SQL 能力将上升一个台阶——很多原本需要在 Java 代码里写几十行循环的逻辑,一句 SQL 就能优雅搞定。
本文通过大量实战案例,带你深入掌握这些特性,并展示如何在 Java/MyBatis 中灵活使用。
一、窗口函数:数据分析的瑞士军刀
1.1 什么是窗口函数
窗口函数(Window Function)在不折叠行的前提下进行聚合计算。与 GROUP BY 不同,窗口函数保留了每一行的独立性,同时可以引用"窗口"内的其他行。
大约 17 分钟