SQL - عملگر UNION
تاریخ ارسال: ۱۵-آذر-۱۳۸۸
عملگر UNION در SQL دو یا چند عبارت SLELECT را با هم ترکیب میکند.
نکته اینکه هر عبارت SELECT داخل عملگر UNION باید حتما دارای تعداد یکسان ستون وستون ها نیز دارای اطلاعات یکسان و تعداد داده ها در هر ستون باید یکسان باشد
دستور UNION :
SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
مثال از UNION :
جدول "Employees_Norway":
| E_ID | E_Name |
|---|---|
| 01 | Hansen, Ola |
| 02 | Svendson, Tove |
| 03 | Svendson, Stephen |
| 04 | Pettersen, Kari |
جدول "Employees_USA":
| E_ID | E_Name |
|---|---|
| 01 | Turner, Sally |
| 02 | Kent, Clark |
| 03 | Svendson, Stephen |
| 04 | Scott, Stephen |
حالا ما میخواهیم اسامی تمام کارمندان در نوروژ و آمریکا را به صورت لیست در آوریم.
از عبارت SELECT به صورت زیر استفاده میکنیم.
SELECT E_Name FROM Employees_Norway
UNION
SELECT E_Name FROM Employees_USA
و نتیجه مانند جدول زیر میشود.
| E_Name |
|---|
| Hansen, Ola |
| Svendson, Tove |
| Svendson, Stephen |
| Pettersen, Kari |
| Turner, Sally |
| Kent, Clark |
| Scott, Stephen |
نکته :توجه کنید که این دستور نمیتواند تمام کارمندان را درنوروژ و آمریکا به صورت لیست در آورد همانطور که مشاهده میکنید ما در دو جدول بالا دو کارمند با نام های یکسان داریم اما هنگام لیست شدن فقط نام یکی از آنها نوشته شد این بدان معناست که عملگر UNION به صورت(DISTINCT) عمل میکند .(برای درک بهتر به قسمت DISTINCTدر بخش SQL مراجعه کنید)
حال برای رفع این مشکل باید از دستور زیر استفاده کنیم
SELECT E_Name FROM Employees_Norway
UNION ALL
SELECT E_Name FROM Employees_USA
در این صورت ما لیست افراد حتی با نام های یکسان را دارا میباشیم
| E_Name |
|---|
| Hansen, Ola |
| Svendson, Tove |
| Svendson, Stephen |
| Pettersen, Kari |
| Turner, Sally |
| Kent, Clark |
| Svendson, Stephen |
| Scott, Stephen |
مترجم :علیرضا مسگری
ادامه » SQL - عبارت SELECT INTO
بازگشت « SQL - عبارت FULL JOIN
۱۹-خرداد-۱۳۸۹
SQL - عبارت NOT NULL
۱۰-خرداد-۱۳۸۹
SQL - عبارت Constraints
۱۵-آذر-۱۳۸۸
SQL - عبارت CREATE TABLE
۱۵-آذر-۱۳۸۸
SQL - عبارت CREATE DATABASE
۱۵-آذر-۱۳۸۸
SQL - عبارت SELECT INTO
۱۵-آذر-۱۳۸۸
SQL - عملگر UNION
۱۵-آذر-۱۳۸۸
SQL - عبارت FULL JOIN
۱۵-آذر-۱۳۸۸
- نام:
- ایمیل:
- نظر:
