کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

آموزش UNION


عملگر UNION نتیجه دو یا چند دستور SELECT را با یکدیگر ترکیب می کند. توجه داشته باشید که هر دستور SELECT در عملگر UNION باید تعداد ستونهای یکسانی را برگردانند. همچنین ستونها باید Data Type یکسانی داشته باشند. علاوه بر این ستونها در هر دستور SELECT باید به یک صورت مرتب شده باشند.


فرم عملگر UNION

    SELECT column_name(s) FROM table1

    UNION

    SELECT column_name(s) FROM table2;

عملگر UNION تنها داده هایی را به صورت پیش فرض انتخاب می کند که از یکدیگر متمایز باشند. برای اینکه داده های تکراری را هم بیاوریم از کلید واژه ALL به همراه UNION استفاده کنید.


فرم عملگر UNION ALL

    SELECT column_name(s) FROM table1

    UNION ALL

    SELECT column_name(s) FROM table2;

نام ستون ها در جدول نتایج معمولا برابر نام ستونها در دستور SELECT اول در عملگر UNION می باشد.

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

آموزش SQL

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

آموزش SQL

مثال استفاده از کلید واژه UNION

عبارت SQL زیر نام تمام شهر های مختلف را (تنها از بین مقادیر مشخص) از ستون "City" و از میان جداول Customers و Suppliers انتخاب می کند:

    SELECT City FROM Customers

    UNION

    SELECT City FROM Suppliers

    ORDER BY City;

عملگر UNION نمی تواند برای لیست کردن تمام شهر های دو جدول مورد استفاده قرار گیرد. اگر تعدادی از مشتریان و عرضه کنندگان دارای نام شهر یکسانی باشند، نام آن شهر تنها یکبار در لیست قرار میگیرد

UNION تنها مقادیر غیر تکراری را انتخاب می کند. برای انتخاب مقادیر تکراری از UNION ALL استفاده کنید.

مثال استفاده از عملگر UNION ALL

عبارت SQL زیر از عملگر UNION ALL برای انتخاب تمام (حتی مقادیر تکراری) شهر ها از جداول Customers و Suppliers استفاده می کند:

SELECT City FROM Customers

UNION ALL

SELECT City FROM Suppliers

ORDER BY City;

مثال استفاده از عملگر UNION ALL همراه با دستور WHERE

عبارت SQL زیر از عملگر UNION ALL برای انتخاب تمام (حتی مقادیر تکراری) شهر های آلمان از جداول Customers و Suppliers استفاده می کند:

SELECT City, Country FROM Customers

WHERE Country='Germany'

UNION ALL

SELECT City, Country FROM Suppliers

WHERE Country='Germany'

ORDER BY City;

1403/03/07 42441 5596
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...