SQL SELECTINTOステートメント
SQL SELECTINTOステートメント
このSELECT INTO
ステートメントは、あるテーブルから新しいテーブルにデータをコピーします。
SELECTINTO構文
すべての列を新しいテーブルにコピーします。
SELECT *
INTO newtable [IN externaldb]
FROM oldtable
WHERE condition;
一部の列のみを新しいテーブルにコピーします。
SELECT column1, column2, column3, ...
INTO newtable [IN externaldb]
FROM oldtable
WHERE condition;
新しいテーブルは、古いテーブルで定義されている列名とタイプで作成されます。AS
この句を使用して、新しい列名を作成できます。
SQL SELECTINTOの例
次の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;
ヒント: SELECT INTO
別のスキーマを使用して、新しい空のテーブルを作成するためにも使用できます。WHERE
クエリがデータを返さないようにする句を追加するだけ
です。
SELECT * INTO newtable
FROM oldtable
WHERE 1 = 0;