آموزش SQL Server

آموزش تخصصی برنامه نویسی

آموزش SQL Server

آموزش تخصصی برنامه نویسی

آموزش کپی اطلاعات در جداول SQL

در این مقاله از سری مقاله های آموزش SQL Server به آموزش کپی کردن اطلاعات از یک جدول به جدول دیگر می پردازیم، برای این کار می توانید از دو دستور Select Into و Insert Into Select استفاده کنید. در ادامه به شرح هر یک از این دستورات و تفاوت آنها با یکدیگر می پردازیم :

 

آموزش دستور Select Into

در SQL می توانید اطلاعات را از یک جدول به داخل جدول دیگری کپی نمایید. دستور SELECT INTO داده ها را از یک جدول بر می دارد و در جدولی دیگر وارد می کند.

 

فرم دستور Select Into

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

SELECT *
INTO newtable [IN externaldb]
FROM table1;

 

یا می توانیم تنها ستون مورد نظر خود را به جدول جدیدی وارد کنیم :

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

جدول جدید با نام ستون ها و تنظیماتی که در عبارت SELECT برای آن تعریف شده است ایجاد می گردد. برای اضافه کردن نام های جدید می توانید از عبارت AS استفاده نمایید.

 

مثال استفاده از دستور Select Into

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

SELECT *
INTO CustomersBackup2013
FROM Customers;

 

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

SELECT *
INTO CustomersBackup2013 IN 'Backup.mdb'
FROM Customers;

 

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

SELECT *
INTO CustomersBackup2013
FROM Customers
WHERE Country='Germany';
SELECT *
INTO CustomersBackup2013
FROM Customers
WHERE Country='Germany';

 

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

SELECT Customers.CustomerName, Orders.OrderID
INTO CustomersOrderBackup2013
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID;

 

نکته :

از عبارت SELECT INTO میتوان برای ایجاد یک جدول خالی جدید با بهره گیری از طرح های ظاهری جدول های دیگر استفاده کرد. برای اینکار تنها کافی است تا دستور WHERE را به عبارت خود اضافه کنیم، این کار سبب می شود تا query ارسال شده بدون پاسخ بازگردد :

SELECT *
INTO newtable
FROM table1
WHERE 1=0;

 

آموزش Insert Into Select

در 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;

 

نحوه استفاده از عبارت Insert Into Select در پایگاه داده

در این آموزش از نمونه پایگاه داده مشهور Northwind استفاده خواهیم کرد. جدول زیر از میان جدول "Customers" انتخاب شده است:

 

آنچه در زیر می بینید گزیده ای است از جدول "Suppliers" :

 

مثال استفاده از عبارت INSERT INTO SELECT

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

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

 

عبارت زیر تنها عرضه کنندگان آلمانی را از جدول Suppliers به جدول Customers کپی می کند :

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

 

با دیگر مقالات ما در زمینه آموزش SQL Server همراه باشید..

آموزش دستورات in و between در SQL Server

در این مقاله از مجموعه مقاله های آموزش SQL Server به آموزش دستورات in و between در SQL Server می پردازیم..

 

عملگر IN در sql server

عملگر IN به شما این امکان را می دهد که چندین ارزش )مقدار) را در عبارت WHERE مشخص کنید. فرم عملگر IN به صورت زیر است :

SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...);

 

نحوه استفاده از عملگر IN در پایگاه داده

در این آموزش از نمونه پایگاه داده مشهور Northwind استفاده خواهیم کرد. جدول زیر از میان جدول "Customers" انتخاب شده است:

 

آموزش دستور in در SQL Server : مثال استفاده از عملگر IN

عبارت SQL زیر مشتریانی را انتخاب می کند که نام شهر هایشان "Paris" با "London" باشد:

SELECT * FROM Customers
WHERE City IN ('Paris','London');

 

آموزش SQL Server : عملگر BETWEEN در sql server

عملگر BETWEEN برای انتخاب مقادیر بین یک محدوده استفاده می شود. عملگر BETWEEN برای انتخاب مقادیر بین یک محدوده استفاده می شود. مقدارها می توانند اعداد، متن و یا تاریخ باشند.

 

فرم عملگر BETWEEN

SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;

 

نحوه استفاده از عملگر BETWEEN در پایگاه داده

در این آموزش از نمونه پایگاه داده مشهور Northwind استفاده خواهیم کرد. جدول زیر از میان جدول "ProductsAnchor" انتخاب شده است:

 

آموزش دستور between در SQL Server : مثال استفاده از عملگر BETWEEN

عبارت SQL زیر تمام محصولاتی را که قیمت آنها بین 10 و 20 باشد را انتخاب می کند:

SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20;

 

آموزش دستور between در SQL Server : مثال استفاده از عملگر NOT BETWEEN

برای نمایش محصولاتی که خارج از محدوده مثال قبل باشد از NOT BETWEEN استفاده می کنیم:

SELECT * FROM Products
WHERE Price NOT BETWEEN 10 AND 20;

 

آموزش دستور between در SQL Server : مثال استفاده از عملگر BETWEEN همراه با IN

عبارت SQL زیر محصولاتی را که در محدوده قیمتی 10 و 20 بوده را انتخاب می کند ولی محصولاتی که "Category ID" آنها 1، 2 یا 3 باشد را نشان نمی دهد:

SELECT * FROM Products
WHERE (Price BETWEEN 10 AND 20)
AND NOT CategoryID IN (1,2,3);

 

آموزش دستور between در SQL Server : مثال استفاده از عملگر BETWEEN همراه با مقادیر متنی

عبارت SQL زیر محصولاتی را که نام آنها با هر کدام از حروف مابین "C" و "M" آغاز شده باشد را انتخاب می کند:

SELECT * FROM Products
WHERE ProductName BETWEEN 'C' AND 'M';

 

آموزش دستور between در SQL Server : مثال استفاده از عملگر BETWEEN NOT همراه با مقادیر متنی

عبارت SQL زیر محصولاتی را که نام آنها با حرفی غیر از حروف مابین "C" و "M" آغاز شده باشد را انتخاب می کند:

SELECT * FROM Products
WHERE ProductName NOT BETWEEN 'C' AND 'M';

 

جدول زیر گزیده ای است از جدول "Order":

 

آموزش دستور between در SQL Server : مثال استفاده از عملگر BETWEEN همراه Date Value

مقدار SQL زیر تمام سفارشاتی را که در بین تاریخ های "04-July-1996" و "09-July-1996" انجام شده است انتخاب می کند:

SELECT * FROM Orders
WHERE OrderDate BETWEEN #07/04/1996# AND #07/09/1996#;

توجه داشته باشید که عملگر BETWEEN در پایگاه های داده مختلف نتایج گوناگونی خواهد داشت. در بعضی از پایگاه داده ها عملگر BETWEEN فیلدهای بین دو مقدار را بجز مقادیر ابتدا و انتهای محدوده را انتخاب می کند. در بعضی دیگر از پایگاه داده ها عملگر BETWEEN فیلدهای بین دو مقدار رابه همراه مقادیر ابتدا و انتهای محدوده را انتخاب می کند. در بعضی دیگر از پایگاه داده ها عملگر BETWEEN فیلدهای بین دو مقدار رابه همراه مقدار ابتدایی و بدون مقدار انتهایی محدوده را انتخاب می کند.

بنابراین: پایگاه داده خود را کنترل کنید که چگونه با عملگر BETWEEN رفتار می کند!

 

با دیگر مقالات ما در زمینه آموزش SQL Server همراه باشید..