top
Loading...
SQL SELECT INTO 語句

SQL SELECT INTO 語句


通過 SQL,您可以從一個表復製信息到另一個表。

SELECT INTO 語句從一個表復製數據,然後把數據插入到另一個新表中。


SQL SELECT INTO 語句

SELECT INTO 語句從一個表復製數據,然後把數據插入到另一個新表中。

MySQL 數據庫不支持 SELECT ... INTO 語句,但支持 INSERT INTO ... SELECT

當然你可以使用以下語句來拷貝表結構及數據:

CREATE TABLE 新表
AS
SELECT * FROM 舊表 

SQL SELECT INTO 語法

我們可以復製所有的列插入到新表中:

SELECT *
INTO newtable [IN externaldb]
FROM table1;

或者只復製希望的列插入到新表中:

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

提示:新表將會使用 SELECT 語句中定義的列名稱和類型進行創建。您可以使用 AS 子句來應用新名稱。



SQL SELECT INTO 實例

創建 Websites 的備份復件:

SELECT *
INTO WebsitesBackup2016
FROM Websites;

只復製一些列插入到新表中:

SELECT name, url
INTO WebsitesBackup2016
FROM Websites;

只復製中國的網站插入到新表中:

SELECT *
INTO WebsitesBackup2016
FROM Websites
WHERE country='CN';

復製多個表中的數據插入到新表中:

SELECT Websites.name, access_log.count, access_log.date
INTO WebsitesBackup2016
FROM Websites
LEFT JOIN access_log
ON Websites.id=access_log.site_id;

提示:SELECT INTO 語句可用於通過另一種模式創建一個新的空表。只需要添加促使查詢沒有數據返回的 WHERE 子句即可:

SELECT *
INTO newtable
FROM table1
WHERE 1=0;
北斗有巢氏 有巢氏北斗