本章将讨论 PostgreSQL 的临时表。
顾名思义,临时表是在数据库会话期间存在的短期表。PostgreSQL 在会话结束或事务结束时,会自动删除临时表。
使用 CREATE TEMPORARY TABLE
创建临时表:
CREATE TEMPORARY TABLE temp_table_name(
column_list
);
- 语法和创建表的
CREATE TABLE
一样,只是加了TEMPORARY
关键字。 - 临时表只对创建它的会话可见
- 临时表可以和普通表重名,但不建议这么做
- 如果它们重名,临时表会优先于普通表。常规的
SELECT
等操作将是针对临时表 - 这种情况下,如果要访问普通表,需要使用完全限定名,即以模式为前缀:
SELECT * FROM public.表名;
- 如果它们重名,临时表会优先于普通表。常规的