SQL SELECT INTO 語(yǔ)句


 使用 SQL,您可以將信息從一個(gè)表中復(fù)制到另一個(gè)表中。

 SELECT INTO 語(yǔ)句從一個(gè)表中復(fù)制數(shù)據(jù),然后將數(shù)據(jù)插入到另一個(gè)新表中。

SQL SELECT INTO 語(yǔ)法

 我們可以把所有的列都復(fù)制到新表中:

SELECT *
INTO newtable [IN externaldb]
FROM table1;

 或者只復(fù)制希望的列插入到新表中:

SELECT column_name(s)
INTO newtable [IN externaldb]
FROM table1;

lamp

提示:將使用SELECT語(yǔ)句中定義的列名和類型創(chuàng)建新表。您可以使用AS子句來(lái)應(yīng)用一個(gè)新名稱。


SQL SELECT INTO 實(shí)例


 創(chuàng)建 Customers 的備份復(fù)件:

SELECT *
INTO CustomersBackup2013
FROM Customers;

 請(qǐng)使用 IN 子句來(lái)復(fù)制表到另一個(gè)數(shù)據(jù)庫(kù)中:

SELECT *
INTO CustomersBackup2013 IN 'Backup.mdb'
FROM Customers;

 只復(fù)制一些列插入到新表中:

SELECT CustomerName,
ContactName
INTO CustomersBackup2013
FROM Customers;

 只復(fù)制德國(guó)的客戶插入到新表中:

SELECT *
INTO CustomersBackup2013
FROM Customers
WHERE Country='Germany';

 復(fù)制多個(gè)表中的數(shù)據(jù)插入到新表中:

SELECT Customers.CustomerName, Orders.OrderID
INTO CustomersOrderBackup2013
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID;

 提示:SELECT INTO 語(yǔ)句可以用于在另一種模式下創(chuàng)建一個(gè)新的空表。只需添加WHERE子句,使查詢返回時(shí)沒(méi)有數(shù)據(jù):

SELECT *
INTO newtable
FROM table1
WHERE 1=0;