YugaByte DB 中的临时表

Edw*_*ery 1 database distributed-database yugabytedb

许多数据库中都存在临时表的概念。YugaByte DB SQL 集群是否有支持临时表的计划?

小智 5

从 v1.2.4 版本开始,YSQL 支持临时表(https://docs.yugabyte.com/latest/releases/)。

您可以使用语法创建临时表CREATE TEMP TABLE table_name ...。YSQL 中的临时表仅对创建它的会话可见,并在该会话终止时被删除。

您可以使用该子句在 YSQL 中的事务块末尾更改临时表的行为ON COMMIT。可用选项有PRESERVE ROWS(默认情况下)、DELETE ROWS和DROP。
一个例子:

CREATE TEMP TABLE test (number int) ON COMMIT DELETE ROWS;
BEGIN;
INSERT INTO test VALUES (1);
COMMIT; -- all rows in test are deleted on commit
SELECT * FROM test;

 number 
--------
(0 rows)
Run Code Online (Sandbox Code Playgroud)