Câu lệnh CHÈN VÀO CHỌN SQL
Câu lệnh SQL INSERT INTO SELECT
Câu lệnh INSERT INTO SELECT
sao chép dữ liệu từ một bảng và chèn nó vào một bảng khác.
Câu lệnh INSERT INTO SELECT
yêu cầu kiểu dữ liệu trong bảng nguồn và bảng đích phải khớp nhau.
Lưu ý: Các bản ghi hiện có trong bảng mục tiêu không bị ảnh hưởng.
CHÈN VÀO CHỌN Cú pháp
Sao chép tất cả các cột từ bảng này sang bảng khác:
INSERT INTO table2
SELECT * FROM table1
WHERE condition ;
Chỉ sao chép một số cột từ bảng này sang bảng khác:
INSERT INTO table2 ( column1 , column2 , column3 , ...)
SELECT column1 , column2 , column3 , ...
FROM table1
WHERE condition ;
Cơ sở dữ liệu demo
Trong hướng dẫn này, chúng tôi sẽ sử dụng cơ sở dữ liệu mẫu Northwind nổi tiếng.
Dưới đây là lựa chọn từ bảng "Khách hàng":
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
Và một lựa chọn từ bảng "Nhà cung cấp":
SupplierID | SupplierName | ContactName | Address | City | Postal Code | Country |
---|---|---|---|---|---|---|
1 | Exotic Liquid | Charlotte Cooper | 49 Gilbert St. | Londona | EC1 4SD | UK |
2 | New Orleans Cajun Delights | Shelley Burke | P.O. Box 78934 | New Orleans | 70117 | USA |
3 | Grandma Kelly's Homestead | Regina Murphy | 707 Oxford Rd. | Ann Arbor | 48104 | USA |
Ví dụ CHÈN VÀO CHỌN SQL
Ví dụ
Copy “Nhà cung cấp” vào “Khách hàng” (các cột không chứa dữ liệu sẽ chứa NULL):
INSERT INTO Customers (CustomerName,
City, Country)
SELECT SupplierName, City, Country FROM Suppliers;
Ví dụ
Copy “Nhà cung cấp” vào “Khách hàng” (điền đầy đủ các cột):
INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode,
Country)
SELECT SupplierName, ContactName, Address, City, PostalCode,
Country FROM Suppliers;
Ví dụ
Chỉ sao chép các nhà cung cấp Đức vào "Khách hàng":
INSERT INTO Customers (CustomerName,
City, Country)
SELECT SupplierName, City, Country FROM Suppliers
WHERE Country='Germany';