021-20483015

دستور INSERT INTO SELECT در SQL

عبارت INSERT INTO SELECT داده ها را از یک جدول کپی می کند و آن را به جدول دیگری وارد می کند.
 

  •    INSERT INTO SELECTنیاز به نوع داده ها در جداول منبع و هدف دارد.
  •  سوابق موجود در جدول هدف، تحت تاثیر قرار نمی گیرند

ساختار دستور INSERT INTO SELECT

تمام ستون ها را از یک جدول به جدول دیگر کپی کنید:

INSERT INTO table2
SELECT * FROM table1
WHERE condition;

تنها چند ستون را از یک جدول به جدول دیگری کپی کنید:

INSERT INTO table2 (column1, column2, column3, ...)
SELECT column1, column2, column3, ...
FROM table1
WHERE condition;

پایگاه داده نسخه ی نمایشی

در این آموزش از پایگاه داده 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
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

مثال INSERT INTO SELECT

دستور SQL زیر "Suppliers" را به "Customers " کپی می کند (ستون هایی که با داده ها پر نمی شوند، شامل NULL هستند):

INSERT INTO Customers (CustomerName, City, Country)
SELECT SupplierName, City, Country FROM Suppliers;

دستور SQL  زیر نسخه " Suppliers " را به " Customers " (تمام ستون ها را پرمی کند):

INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
SELECT SupplierName, ContactName, Address, City, PostalCode, Country FROM Suppliers;

دستور SQL زیر تنها صادرکنندگان آلمانی را به " Customers " تقسیم می کند:

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

 

نظر شما

لطفا نام و نام خانوادگی خود را وارد کنید
لطفا ایمیل خود را وارد کنید لطفا ایمیل صحیح وارد کنید.
لطفا متن نظر خود را وارد کنید
>

مقالات و دروس

به خبرنامه مدرسه طراحی وب ایران (وب مهراز) بپیوندید.

لطفا شماره همراه صحیح وارد کنید.
لطفا ایمیل صحیح وارد کنید.

مقالات مرتبط