HOME >> Tips >> Oracle Tips >> SQL

表をSELECTして別の表へINSERTする(INSERT ~ SELECT)

 
文書番号:20264




「テーブルB」を SELECT してその結果を「テーブルA」へINSERTするSQLです。
2つのテーブルを比較してINSERTする場合は「2つの表を比較して存在しない行をINSERTする」を参照。

【SQL】

  ・定義が同じテーブルで全件 INSERT する場合

INSERT INTO テーブルA
SELECT * 
FROM   テーブルB
  ・列を指定して INSERT する場合

INSERT INTO テーブルA(
     列1
    ,列2
)
SELECT 列1
      ,列2
FROM   テーブルB
  ・条件を指定して SELECT した結果を INSERT する場合

INSERT INTO テーブルA(
     列1
    ,列2
)
SELECT 列1
      ,列2
FROM   テーブルB
WHERE  テーブルB.列3 = 条件値1
AND    テーブルB.列4 = 条件値2