ORACLE操作 ORACLE機能

[ORACLE] 既存テーブルを元に新規にテーブルを作成する(テーブルコピー)

投稿日:2017年2月28日 更新日:

すでに存在するテーブルを元に新規にテーブルを作成するサンプルです。
(テーブルのコピーです。)

構文

(既存テーブルを元に新規テーブルを作成する)
CREATE TABLE <新テーブル名> AS <SELECT句>

SELECT句には、既存テーブルを検索するSQLを指定します。

サンプルコード

例)既存テーブル(tbl1)と同じ構成のテーブル(tbl2)を作成する

上記の例だとデータもコピーされます。
データはコピーしたくない場合は、常にfalseとなるWHERE句を付加すればOKです。

例)テーブルをコピーするが、データはコピーさせない

コピーのスピードをアップしたい場合

NOLOGGING PARALLELオプションを付加すると、コピーがスピードアップします。

例)NOLOGGING PARALLELオプションを付加した例

メモ

  • 主キーやデフォルト値はコピーされません。 必要な場合はテーブルを作成後に個別に作成してください。
  • NOT NULL制約はコピーされます。

スポンサーリンク

スポンサーリンク

-ORACLE操作, ORACLE機能
-

執筆者:



comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

スポンサーリンク