در این مقاله از سری مقاله های آموزش SQL Server به آموزش انواع join می پردازیم :
عملگر UNION نتیجه دو یا چند دستور SELECT را با یکدیگر ترکیب می کند.
عملگر UNION برای ترکیب نتایج دو یا چند دستور SELECT استفاده می شود.
توجه داشته باشید که هر دستور SELECT در عملگر UNION باید تعداد ستونهای یکسانی را برگردانند. همچنین ستونها باید Data Type یکسانی داشته باشند. علاوه بر این ستونها در هر دستور SELECT باید به یک صورت مرتب شده باشند.
فرم عملگر UNION
SELECT column_name(s) FROM table1
نکته:
عملگر UNION تنها داده هایی را به صورت پیش فرض انتخاب می کند که از یکدیگر متمایز باشند. برای اینکه داده های تکراری را هم بیاوریم از کلید واژه ALL به همراه UNION استفاده کنید.
فرم عملگر UNION ALL
SELECT column_name(s) FROM table1
نکته: نام ستون ها در جدول نتایج معمولا برابر نام ستونها در دستور SELECT اول در عملگر UNION می باشد.
نحوه استفاده از کلید واژه UNION در پایگاه داده
در این آموزش از نمونه پایگاه داده مشهور Northwind استفاده خواهیم کرد.
جدول زیر از میان جدول "Customers" انتخاب شده است:
آنچه در زیر می بینید گزیده ای است از جدول "Suppliers":
مثال استفاده از کلید واژه UNION
عبارت SQL زیر نام تمام شهر های مختلف را (تنها از بین مقادیر مشخص) از ستون "City" و از میان جداول Customers و Suppliers انتخاب می کند:
SELECT City FROM Customers
SELECT City FROM Suppliers
ORDER BY City;
نکته:
عملگر UNION نمی تواند برای لیست کردن تمام شهر های دو جدول مورد استفاده قرار گیرد. اگر تعدادی از مشتریان و عرضه کنندگانAnchor دارای نام شهر یکسانی باشند، نام آن شهر تنها یکبار در لیست قرار
می گیرد. UNION تنها مقادیر غیر تکراری را انتخاب می کند. برای انتخاب مقادیر تکراری از UNION ALL استفاده کنید.
مثال استفاده از عملگر UNION ALL
آموزش SQL Server : عبارت SQL زیر از عملگر UNION ALL برای انتخاب تمام (حتی مقادیر تکراری) شهر ها از جداول Customers و Suppliers استفاده می کند:
SELECT City FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City;
مثال استفاده از عملگر UNION ALL همراه با دستور WHERE
عبارت SQL زیر از عملگر UNION ALL برای انتخاب تمام (حتی مقادیر تکراری) شهر های آلمانAnchor از جداول Customers و Suppliers استفاده می کند:
SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION ALL
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;
آموزش SQL Server ادامه دارد
سلام عزیزان در این سری آموزشها با پایگاه داده Sql Server آشنا میشوید.
آموزش SQL SERVER: عبارتSELECT TOP برای مشخص کردن تعداد رکوردهایی که می خواهیم برگردانده شود استفاده می شود.
عبارت TOP در جداول بزرگ با هزاران record می تواند بسیار مفید باشد. بیرون کشیدن تعداد زیادی از رکوردها می تواند روی عملکرد تاثیر گذارد.
نکته:
تمام سیستم های پایگاه داده ازSELECT TOP پشتیبانی نمی کنند.
فرم عبارت SELECT TOP در SQL Server و MS Access
SELECT TOP number|percent column_name(s)
FROM table_name;
معادل SELECT TOP در MySQL و Oracle
فرم در MySQL
SELECT column_name(s)
FROM table_name
LIMIT number;
مثال:
SELECT *
FROM Persons
LIMIT 5;
فرم در Oracle
SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number;
مثال:
SELECT *
FROM Persons
WHERE ROWNUM <=5;
آموزش SQL SERVER : نحوه استفاده از عبارت SELECT TOP در پایگاه داده
در این آموزش از نمونه پایگاه داده مشهور Northwind استفاده خواهیم کرد.
جدول زیر از میان جدول "Customers" انتخاب شده است:
مثال استفاده از دستور SELECT TOP
عبارت SQL زیر تنها دو record اول را از جدول "Customers" انتخاب می کند:
SELECT TOP 2 * FROM Customers;
مثال استفاده از دستور SELECT TOP PERCENT
عبارت SQL زیر 50 درصد record های اول را از جدول "Customers" انتخاب می کند:
SELECT TOP 50 PERCENT * FROM Customers;
آموزش عملگر LIKE
عملگر LIKE در عبارت WHERE برای پیدا کردن یک الگوی خاص در یک ستون استفاده می شود.
فرم عملگر LIKE
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;
نحوه استفاده از عملگر LIKE در پایگاه داده
در این آموزش از نمونه پایگاه داده مشهور Northwind استفاده خواهیم کرد.
جدول زیر از میان جدول "Customers" انتخاب شده است:
مثال استفاده از عملگر LIKE
عبارت SQL زیر تمام مشتریانی را که در شهری زندگی می کنند که با حرف "S" آغاز می شود انتخاب می کند:
SELECT * FROM Customers
WHERE City LIKE 's%';
نکته:
علامت % برای تعریف wildcards (حروف مفقود شده) قبل و بعد از الگو استفاده می شود. در فصل بعد بیشتر راجع به wildcards خواهید آموخت.
عبارت SQL زیر تمام مشتریانی را که در شهری زندگی می کنند که به حرف "S" ختم می شود انتخاب می کند:
SELECT * FROM Customers
WHERE City LIKE '%s';
عبارت SQL زیر تمام مشتریانی را که در کشوری زندگی می کنند که حاوی کلمه "land" باشند انتخاب می کند:
SELECT * FROM Customers
WHERE Country LIKE '%land%';
استفاده از کلید واژه NOT به شما این امکان را می دهد تا record هایی را انتخاب کنید که با الگو مطابقت ندارند.
عبارت SQL زیر تمام مشتریانی را که در کشوری زندگی می کنند که حاوی کلمه "land" نمی باشند انتخاب می کند:
SELECT * FROM Customers
WHERE Country NOT LIKE '%land%';
آموزش SQL SERVER ادامه دارد