SQL SELECT INTO
SQL SELECT INTO 文
SELECT INTO 文は、1つのテーブルからデータをコピーして新しいテーブルに挿入します。
SELECT INTO 構文
すべての列を新しいテーブルにコピーします:
SELECT *
INTO newtable [IN externaldb]
FROM oldtable
WHERE condition;
一部の列のみを新しいテーブルにコピーします:
SELECT column1, column2, column3, ...
INTO newtable [IN externaldb]
FROM oldtable
WHERE condition;
新しいテーブルは、既存のテーブルで定義されている列名と型で作成されます。AS 句を使用して新しい列名を作成することができます。
SQL SELECT INTO の例
次の SQL 文は、Customers のバックアップコピーを作成します:
SELECT * INTO CustomersBackup2017
FROM Customers;
次の SQL 文は、IN 句を使用して別のデータベースの新しいテーブルにテーブルをコピーします:
SELECT * INTO CustomersBackup2017 IN 'Backup.mdb'
FROM Customers;
次の SQL 文は、一部の列のみを新しいテーブルにコピーします:
SELECT CustomerName, ContactName INTO CustomersBackup2017
FROM Customers;
次の SQL 文は、ドイツの顧客のみを新しいテーブルにコピーします:
SELECT * INTO CustomersGermany
FROM Customers
WHERE Country = 'Germany';
次の SQL 文は、複数のテーブルからデータを新しいテーブルにコピーします:
SELECT Customers.CustomerName, Orders.OrderID
INTO CustomersOrderBackup2017
FROM Customers
LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID;
Tip: SELECT INTO は、別のテーブルのスキーマを使用して新しい空のテーブルを作成するためにも使用できます。クエリがデータを返さないようにする WHERE 句を追加してください:
SELECT * INTO newtable
FROM oldtable
WHERE 1 = 0;