SELECT命令の結果をテーブルに追加する

SELECT命令の結果をテーブルに追加する

INSERT INTO命令
INSERT INTO テーブル1 SELECT * FROM テーブル2;

伝票一覧テーブルから担当者が「星野」のデータを抽出し、「伝票一覧_星野」テーブルに追加する。

「伝票一覧」テーブル

「伝票一覧_星野」テーブル

実行結果
insert into 伝票一覧_星野 select * from 伝票一覧 where 担当者 = ‘星野’;

必要なフィールドのみを追加する

特定フィールドの値のみ追加するINSERT INTO命令
INSERT INTO テーブル1(フィールド1,フィールド2・・・) SELECT フィールド1,フィールド2 FROM テーブル2;

「ドリンク販売履歴」の重複を取り除いた値から「品名」と「単価」を「ドリンクマスタ」へ追加する
insert into ドリンクマスタ(品名,価格) select distinct 品名,単価 from ドリンク販売履歴;

ドリンク販売履歴

ドリンクマスタ

実行結果

下の例では、ドリンク販売履歴に「コーヒー」の単価が2種類あるため、ドリンクマスタにはコーヒーが2種類追加される。



実行結果

オートナンバー型のフィールドにはデータを入力する必要がないため、フィールドを指定してレコードを追加する。
それ以外でも、フィールドに値を入力したくない時は、こちらの方法で行う。
既定値を持つフィールドのデータを利用したい場合も同様に処理する。