Hubert 'depesz' Lubaczewski:等待 PostgreSQL 19 – 新增 GROUP BY ALL
💡
原文英文,约600词,阅读约需3分钟。
📝
内容提要
2025年9月29日,Tom Lane 提交了补丁,新增了 GROUP BY ALL 功能,该功能自动将不含聚合或窗口函数的表达式加入查询的 groupClause,简化数据探索。此语法已被 SQL 标准接受,稳定性较高。
🎯
关键要点
-
2025年9月29日,Tom Lane 提交了补丁,新增了 GROUP BY ALL 功能。
-
GROUP BY ALL 自动将不含聚合或窗口函数的表达式加入查询的 groupClause。
-
此功能简化了数据探索,已被 SQL 标准接受,稳定性较高。
-
该功能在某些其他数据库管理系统中已存在。
-
标准未允许在 GROUP BY 中使用表达式,因此需要自行定义部分语义。
-
示例查询展示了使用 GROUP BY ALL 的简化效果。
-
GROUP BY ALL 使查询处理更简洁,避免了冗长的显式列出所有字段。
-
该功能同样适用于连接查询和更复杂的表达式。
❓
延伸问答
GROUP BY ALL 功能的主要作用是什么?
GROUP BY ALL 功能自动将不含聚合或窗口函数的表达式加入查询的 groupClause,简化数据探索。
GROUP BY ALL 是什么时候被接受为 SQL 标准的?
GROUP BY ALL 功能在 2025年9月29日被 SQL 标准接受。
使用 GROUP BY ALL 的查询示例是什么?
示例查询为:select relnamespace, relkind, count(*) from pg_class group by all;
GROUP BY ALL 与传统 GROUP BY 的区别是什么?
GROUP BY ALL 使查询处理更简洁,避免了冗长的显式列出所有字段,而传统的 GROUP BY 需要手动列出所有字段。
GROUP BY ALL 功能在其他数据库管理系统中是否存在?
是的,GROUP BY ALL 功能在某些其他数据库管理系统中已存在。
GROUP BY ALL 语法的稳定性如何?
由于已被 SQL 标准接受,因此可以合理地相信其语法是稳定的。
🏷️
标签
➡️