web-dev-qa-db-ja.com

SQLでSELECT INTOを使用して新しいテーブルを作成する

可能性のある複製:
Oracleを使用してSELECT INTO

SQL SELECT INTO新しいテーブルを作成し、単一のSQLステートメントで古いテーブルレコードを新しいテーブルにダンプするためのステートメント

  SELECT * INTO NEW_TABLE FROM OLD_TABLE;

しかし、上記のクエリをしようとすると、ORA-00905: missing keyword

Oracleでそれを行うことは可能ですか?

ありがとう。

31
Aspirant

新しいテーブルを作成するための構文は

CREATE TABLE new_table
AS
SELECT *
  FROM old_table

これにより、new_tableにある列を含むold_tableという名前の新しいテーブルが作成され、データがコピーされます。テーブルの制約を複製せず、ストレージ属性を複製せず、テーブルで定義されたトリガーを複製しません。

SELECT INTOは、テーブルからPL/SQLブロックのローカル変数にデータをフェッチするときにPL/SQLで使用されます。

77
Justin Cave