当我看到以下内容时,我有点惊讶:
CREATE TEMPORARY TABLE X (ID int) AS SELECT NumColumn FROM Table
我试图用谷歌搜索它,但只发现使用它作为别名。这个用途究竟是什么?我感到有点困惑,因为我愚蠢地创建了临时表,然后使用 insert..
谢谢
当我看到以下内容时,我有点惊讶:
CREATE TEMPORARY TABLE X (ID int) AS SELECT NumColumn FROM Table
我试图用谷歌搜索它,但只发现使用它作为别名。这个用途究竟是什么?我感到有点困惑,因为我愚蠢地创建了临时表,然后使用 insert..
谢谢
它是如何创建临时表并使用选择查询的结果填充它的。
您可以在 CREATE TABLE 规范最底部的文档中看到它
选择语句:
[忽略 | REPLACE] [AS] SELECT ...(一些合法的选择语句)
这将为您创建一个临时表,但请记住,这不会带来您在原始表上的任何索引。因此,有时最好使用创建表定义的完整副本
create table x like y;
由于这只会创建一个 EMPTY 表,因此您还需要运行
insert into x (col1) select col1 from y;
CREATE TABLE (table name) AS SELECT * FROM (existing table name);
此命令用于将整个表复制到另一个表;