目次

他のテーブルの内容をinsertをする - select文で取得したレコードをテーブルに挿入する

他のテーブルのレコードや、select文で取得したレコードを挿入するSQL文を紹介します。

書式

insert into テーブル名(列名1,列名2,列名3,…) select 列名1,列名2,列名3,… from テーブル名

products テーブル
idnamecategoryprice
1PenguinBird450
2WhaleMammal5000
3BearMammal680
4OstrichBird550
5HawkBird300
6CamelMammal700
working テーブル
id(自動採番)codevalue


上記のテーブルがあり、productsテーブルの"Bird"カテゴリのレコードをworkingテーブルに挿入する場合は以下のSQLを用います。productsテーブルのNameをworkingテーブルのcodeに、productsテーブルのpriceをworkingテーブルのvalueに挿入します。
insert into working (code, value) select name, price from products where category='Bird'

すべてのレコードをworkingテーブルに挿入する場合は以下のSQLを用います。
insert into working (code, value) select name, price from products

補足

SQL Serverで異なるデータベース間でのレコードの挿入は「データベース間のレコードのコピーまたは移動 (SQL Server Tips)」の記事を参照してください。

著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
最終更新日: 2024-01-06
作成日: 2014-07-21
iPentec all rights reserverd.