创建临时表

临时表对于保留临时数据非常有用。MySQL 版本 3.23 及更高版本中提供了临时表选项。

会话结束或连接关闭时,临时表将自动销毁。用户也可以删除临时表。

可以在许多连接中同时使用相同的临时表名,因为临时表仅可由创建该表的客户端访问和访问。

可以使用以下类型创建临时表

--->Basic temporary table creation
CREATE TEMPORARY TABLE tempTable1(
       id INT NOT NULL AUTO_INCREMENT,
       title VARCHAR(100) NOT NULL,
       PRIMARY KEY ( id )
    );

--->Temporary table creation from select query
CREATE TEMPORARY TABLE tempTable1
    SELECT ColumnName1,ColumnName2,... FROM table1;

你可以在构建表时添加索引:

CREATE TEMPORARY TABLE tempTable1
        ( PRIMARY KEY(ColumnName2) )
    SELECT ColumnName1,ColumnName2,... FROM table1;

IF NOT EXISTS 关键字可以如下所述使用,以避免 ‘表已存在’ 错误。但是在这种情况下,如果你正在使用的表名已经存在于当前会话中,则不会创建表。

CREATE TEMPORARY TABLE IF NOT EXISTS tempTable1
    SELECT ColumnName1,ColumnName2,... FROM table1;