在SQL中使用SELECT INTO创建新表

在SQL中使用SELECT INTO创建新表,sql,oracle,select,create-table,Sql,Oracle,Select,Create Table,可能重复: 我曾遇到过sqlselectinto语句,用于创建新表,并将旧表记录转储到单个SQL语句中的新表中 SELECT * INTO NEW_TABLE FROM OLD_TABLE; 但是当我尝试上面的查询时,它给出的错误是ORA-00905:missing keyword 在ORACLE中有可能做到这一点吗 谢谢。创建新表的语法是 CREATE TABLE new_table AS SELECT * FROM old_table 这将创建一个名为new\u table的新

可能重复:

我曾遇到过
sqlselectinto
语句,用于创建新表,并将旧表记录转储到单个SQL语句中的新表中

  SELECT * INTO NEW_TABLE FROM OLD_TABLE;
但是当我尝试上面的查询时,它给出的错误是
ORA-00905:missing keyword

在ORACLE中有可能做到这一点吗


谢谢。

创建新表的语法是

CREATE TABLE new_table
AS
SELECT *
  FROM old_table
这将创建一个名为
new\u table
的新表,其中包含
old\u table
中的任何列,并复制数据。它不会复制表上的约束,不会复制存储属性,也不会复制表上定义的任何触发器


当您希望将数据从表中提取到PL/SQL块中的局部变量中时,PL/SQL中会使用
选择进入。

要完成此图:
创建表为..
是标准SQL,几乎所有DBMS都支持它。甚至有些人使用SELECT INTO创建新表。在SQLServerManagementStudio中不起作用。