如何在没有单独的CREATE TABLE的SELECT语句中创建临时MySQL表?
要在SELECT语句中创建临时表,我们使用TEMPORARY关键字。
该临时表对于当前会话是可见的,并且每当会话关闭时,该表都会被自动销毁。两个会话可以使用同一个临时表。
创建一个表。
mysql> create table MyTableDemo -> ( -> id int, -> Name varchar(100) -> );
插入一些记录。
mysql> insert into MyTableDemo values(1,'John'); mysql> insert into MyTableDemo values(2,'Carol'); mysql> insert into MyTableDemo values(3,'Bob');
显示所有记录。
mysql> select *from MyTemporaryTableDemo;
这是输出。
+------+-------+ | id | Name | +------+-------+ | 1 | John | | 2 | Carol | | 3 | Bob | +------+-------+ 3 rows in set (0.00 sec)
创建临时表的语法。
CREATE TEMPORARY TABLE IF NOT EXISTS yourTemporaryTableName AS (SELECT * FROM yourTableName);
现在让我们在以下查询中实现上述语法-
mysql> CREATE TEMPORARY TABLE IF NOT EXISTS MyTemporaryTableDemo AS (SELECT * FROM MyTableDemo); Records: 3 Duplicates: 0 Warnings: 0
检查是否所有记录均已成功复制。
mysql> select *from MyTemporaryTableDemo;
这是输出。
+------+-------+ | id | Name | +------+-------+ | 1 | John | | 2 | Carol | | 3 | Bob | +------+-------+ 3 rows in set (0.00 sec)
热门推荐
10 送给姐姐简短的祝福语
11 新年探亲祝福语简短精辟
12 给男生的简短祝福语
13 生日祝福语男兄弟简短
14 结婚婚庆祝福语简短
15 娘家除夕祝福语大全简短
16 朋友领证祝福语长文简短
17 岁岁祝福语简短独特
18 生日祝福语简短明了 同事