最新的Web開發教程
 

SQL INSERT INTO SELECT語句


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

從一個表的INSERT INTO SELECT語句複製數據,並將其插入到現有的表中。


該SQL INSERT INTO SELECT語句

INTO SELECT語句插入從一個表中選擇數據並將其插入到現有的表。 目標表中的任何現有行不受影響。

SQL INSERT INTO SELECT語法

我們可以從一個表複製所有列到另一個,現有的表:

INSERT INTO table2
SELECT * FROM table1;

或者我們可以只複製我們要到另一個列,現有表:

INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;

演示數據庫

在本教程中,我們將使用眾所周知的Northwind示例數據庫。

下面是從選擇"Customers"表:

客戶ID 顧客姓名 聯繫人姓名 地址 郵政編碼 國家
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitucion 2222 Mexico D.F. 05021 Mexico
3 Antonio Moreno Taqueria Antonio Moreno Mataderos 2312 Mexico D.F. 05023 Mexico

而從選擇"Suppliers"表:

供應商ID 供應商名稱 聯繫人姓名 地址 郵政編碼 國家 電話
1 異國情調的液體 夏洛特·庫珀 49吉爾伯特聖 Londona EC1 4SD 聯合王國 (171)555-2222
2 新奧爾良印第安趣 雪萊·伯克 郵政信箱78934 新奧爾良 70117 美國 (100)555-4822
3 奶奶凱利的家園 里賈納·墨菲 707牛津路。 安阿伯 48104 美國 (313)555-5735

SQL INSERT INTO SELECT例子

從複製只有幾列"Suppliers""Customers"

INSERT INTO Customers (CustomerName, Country)
SELECT SupplierName, Country FROM Suppliers;
試一試»

只有德國供應商複製到"Customers"

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