PostgreSQL没有内置支持全局临时表的功能,但有几个扩展可提供此功能。其中一个扩展是PGTT,允许用户创建类似于Oracle的全局临时表。另一个选择是使用基于SQL的扩展,如pg_global_temp_tables和Global-Temporary-Tables-For-PG。这些扩展提供了在事务之外创建临时表和支持临时表上的索引等功能。然而,它们可能无法解决目录表膨胀的问题。pgtt扩展稳定且功能齐全,但尚未由PostgreSQL全球开发组分发为二进制包。总体而言,在PostgreSQL中实现全局临时表的最佳选择是使用这些扩展或重写应用程序以使用本地临时表。
使用SQL DML操作中的临时表有几个好处。Oracle数据库的“全局临时表”在处理复杂连接时解决了性能问题。Google发布了适用于Google CloudSQL和AlloyDB的Postgres产品的扩展“pgtt”。在自管理实例中,“pgtt”非常容易使用。
完成下面两步后,将自动完成登录并继续当前操作。