在SQL中使用SELECT INTO创建新表

时间:2012-08-09 21:20:48

标签: sql oracle select create-table

  

可能重复:
  SELECT INTO using Oracle

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

  SELECT * INTO NEW_TABLE FROM OLD_TABLE;

但是当我尝试上述查询时,它会给出错误ORA-00905: missing keyword

是否可以在ORACLE中执行此操作?

感谢。

1 个答案:

答案 0 :(得分:77)

创建新表的语法是

CREATE TABLE new_table
AS
SELECT *
  FROM old_table

这将创建一个名为new_table的新表,其中包含old_table中的任何列并复制数据。它不会复制表上的约束,也不会复制存储属性,也不会复制表中定义的任何触发器。

当您想要将表中的数据提取到PL / SQL块中的局部变量时,

SELECT INTO用于PL / SQL。