عملگر UNION و UNION ALL در SQL
- صفحه قبلی Full Join SQL
- صفحه بعدی Select Into SQL
عملگر UNION در SQL
عملگر UNION برای ترکیب نتایج جداول دو یا چند دستور SELECT استفاده میشود.
لطفاً توجه داشته باشید که دستور SELECT درون UNION باید دارای تعداد ستون یکسان باشد. ستونها باید نوع داده مشابهی داشته باشند. همچنین، ترتیب ستونها در هر دستور SELECT باید مشابه باشد.
قوانین دستور SQL UNION
SELECT column_name(s) FROM table_name1 UNION SELECT column_name(s) FROM table_name2
توجه:به طور پیشفرض، عملگر UNION مقادیر متفاوت را انتخاب میکند. اگر مقادیر تکراری مجاز هستند، از UNION ALL استفاده کنید.
قوانین دستور SQL UNION ALL
SELECT column_name(s) FROM table_name1 UNION ALL SELECT column_name(s) FROM table_name2
علاوه بر این، نام ستونهای درون نتایج UNION همیشه برابر با نام ستونهای اولین دستور SELECT در UNION است.
در مثالهای زیر از جدولهای اصلی استفاده شده است:
Employees_China:
E_ID | E_Name |
---|---|
01 | Zhang, Hua |
02 | Wang, Wei |
03 | Carter, Thomas |
04 | Yang, Ming |
Employees_USA:
E_ID | E_Name |
---|---|
01 | Adams, John |
02 | Bush, George |
03 | Carter, Thomas |
04 | Gates, Bill |
استفاده از دستور UNION
مثال:
تمام کارکنان متفاوت در چین و آمریکا را لیست کنید:
SELECT E_Name FROM Employees_China UNION SELECT E_Name FROM Employees_USA
نتایج
E_Name |
---|
Zhang, Hua |
Wang, Wei |
Carter, Thomas |
Yang, Ming |
Adams, John |
Bush, George |
Gates, Bill |
توجه:این دستور نمیتواند تمام کارکنان در چین و آمریکا را لیست کند. در مثال بالا، دو کارمند با یک نام مشابه وجود دارند و فقط یکی از آنها لیست شده است. دستور UNION فقط مقادیر متفاوت را انتخاب میکند.
UNION ALL
دستور UNION ALL و دستور UNION تقریباً مشابه هستند، اما دستور UNION ALL تمام مقادیر را لیست میکند.
SQL Statement 1 UNION ALL SQL Statement 2
استفاده از دستور UNION ALL
مثال:
تمام کارکنان در چین و آمریکا را لیست کنید:
SELECT E_Name FROM Employees_China UNION ALL SELECT E_Name FROM Employees_USA
نتایج
E_Name |
---|
Zhang, Hua |
Wang, Wei |
Carter, Thomas |
Yang, Ming |
Adams, John |
Bush, George |
Carter, Thomas |
Gates, Bill |
- صفحه قبلی Full Join SQL
- صفحه بعدی Select Into SQL