گروه مقاله : SQL Server
تاريخ انتشار : 1394/02/03 - 13:03
كد :240

دستور INSERT INTO SELECT در SQL

به کمک SQL شما می توانید اطلاعات را از یک جدول در جدول دیگر کپی کنید.
دستور INSERT INTO SELECT داده را از یک جدول کپی کرده و آن را در جدولی که وجود دارد اضافه می کند.
تمام سطرهای موجود در جدول مورد نظر دست نخورده می مانند.
فرم دستور INSERT INTO SELECT :
ما می توانیم تمام ستون ها را از یک جدول در جدول دیگر موجود ،اضافه کنیم:
INSERT INTO table2
SELECT * FROM table1;
یا اینکه فقط ستون هایی که می خواهیم را در جدول دیگر کپی کنیم:
INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;
نسخه نمایشی پایگاه داده :
در این آموزش ما از نمونه ی پایگاه داده معروف Northwind استفاده می کنیم :
در زیر بخشی از جدول "Customers" آورده شده است :
 
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
 
و بخشی از جدول "Suppliers" :
 
SupplierID SupplierName ContactName Address City Postal Code Country Phone
1 Exotic Liquid Charlotte Cooper 49 Gilbert St. Londona EC1 4SD UK (171) 555-2222
2 New Orleans Cajun Delights Shelley Burke P.O. Box 78934 New Orleans 70117 USA (100) 555-4822
3 Grandma Kelly's Homestead Regina Murphy 707 Oxford Rd. Ann Arbor 48104 USA (313) 555-5735

 

مثال 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';
نظرات كاربران :