TECH I.S.

SQL INSERT INTO SELECTステートメント


SQL INSERT INTO SELECTステートメント

INSERT INTO SELECTステートメントは、あるテーブルからデータをコピーし、それを別のテーブルに挿入します。 INSERT INTO SELECTステートメントでは、ソース テーブルとターゲット テーブルのデータ型が一致している必要があります。

注:ターゲットテーブルの既存のレコードは影響を受けません。

INSERT INTO SELECT構文

あるテーブルから別のテーブルにすべての列をコピーします。

INSERT INTO <em>table2</em> SELECT * FROM <em>table1 </em>WHERE <em>condition</em>;

あるテーブルから別のテーブルにいくつかの列のみをコピーします。

INSERT INTO <em>table2 </em>(<em>column1</em>, <em>column2</em>, <em>column3</em>, ...) SELECT <em>column1</em>, <em>column2</em>, <em>column3</em>, ... FROM <em>table1</em> WHERE <em>condition</em>;



デモデータベース

このチュートリアルでは、よく知られているNorthwindサンプルデータベースを使用します。

以下は、「顧客」テーブルからの選択です。

顧客ID

顧客名

連絡先

住所

郵便番号

1

アルフレッド・フードボックス マリア・アンダース オベレ通り57 ベルリン 12209 ドイツ
2 アナ・トルヒーヨ サンドイッチとアイスクリーム アナ・トルヒーヨ コンスティトゥシオン通り2222番地 メキシコDF 05021 メキシコ
3 アントニオ・モレノ・タケリア アンソニー・モレノ マタデロス 2312 メキシコDF 05023 メキシコ

そして、「サプライヤー」テーブルからの選択:

サプライヤーID

サプライヤ名

連絡先

住所

郵便番号

1 エキゾチック・リキッド シャーロット・クーパー 49 ギルバート ストリート ロンドン EC1 4SD イギリス
2 ニューオーリンズのケイジャン料理 シェリー・バーク 私書箱 78934 ニューオーリンズ 70117 アメリカ合衆国
3 ケリーおばあちゃんのホームステッド レジーナ・マーフィー 707オックスフォードロード。 アナーバー 48104 アメリカ合衆国

SQL INSERT INTO SELECTの例

次のSQLステートメントは、"Suppliers"を"Customers"にコピーします (データが入力されていない列にはNULLが含まれます)。

INSERT INTO Customers (CustomerName, City, Country) SELECT SupplierName, City, Country FROM Suppliers;

自分で試してみる(開発準備中) »

次のSQLステートメントは、"Suppliers"を"Customers"にコピーします (すべての列に入力します)。

INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country) SELECT SupplierName, ContactName, Address, City, PostalCode, Country FROM Suppliers;

自分で試してみる(開発準備中)»

次のSQLステートメントは、ドイツのサプライヤーのみを「顧客」にコピーします。

INSERT INTO Customers (CustomerName, City, Country) SELECT SupplierName, City, Country FROM Suppliers WHERE Country='Germany';

自分で試してみる(開発準備中)»



プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細