Oracle 同じ定義の表を複製するSQL

スポンサーリンク
スポンサーリンク

同じテーブルレイアウトのテーブルをもう一個作りたいなぁという時に使うSQL

1
2
3
4
5
6
7
8
CREATE TABLE 
 新規テーブル AS
SELECT
 *
FROM
 既存テーブル
WHERE
 1 = 2;

「where 1 = 2」の意味ですがデータの中身をコピーしないテクニックみたいです!こんな書き方があるなんて便利。
以下のサイトを参考にさせていただきました。すごいわかりやすくて勉強になります。

しばちょう先生の試して納得!DBAへの道

同じ定義のテーブルのデータをコピーしたくなったときのSQL

1
2
3
4
5
6
INSERT INTO
 新規テーブル
SELECT
 *
FROM
 既存テーブル

既存テーブルのデータをすべてを新規テーブルにコピーすることができます。

コメント

タイトルとURLをコピーしました