دالة UNION و UNION ALL في SQL

دالة UNION في SQL

استخدم دالة UNION لدمج نتائج جملتين أو أكثر من SELECT.

يرجى الانتباه،يجب أن يكون عدد الأعمدة في جملة SELECT داخل UNION متطابقًا. يجب أن تكون الأعمدة أيضًا من نفس نوع البيانات. كما يجب أن يكون ترتيب الأعمدة في كل جملة SELECT متطابقًا.

SQL UNION 语法

table_name1 SELECT column_name(s) جملة SQL UNION ALL
إدراج جميع الأسماء المختلفة للموظفين في الولايات المتحدة والصين:
table_name1 SELECT column_name(s) FROM

UNIONجملة SQL UNION

بافتراض default، يتم اختيار أمر UNION القيم المختلفة فقط. إذا كان يسمح بالقيم المكررة، استخدم أمر UNION ALL.

table_name1 SELECT column_name(s) جملة SQL UNION ALL
SELECT E_Name FROM Employees_China
table_name1 SELECT column_name(s) FROM

table_name2

إضافة إلى ذلك، تكون أسماء الأعمدة في نتائج UNION دائمًا تساوي أسماء الأعمدة في أمر SELECT الأول.

في المثال التالي، يتم استخدام الجداول الأصلية التالية:

Employees_USA: النتيجة
E_ID E_Name
01 Zhang, Hua
02 Bush, George
03 Wang, Wei

Employees_China:

Employees_USA: النتيجة
E_ID Yang, Ming
01 Adams, John
02 Bush, George
03 Carter, Thomas

04

استخدام أمر UNION

مثال

قائمة جميع الموظفين في الولايات المتحدة والصين:
إدراج جميع الأسماء المختلفة للموظفين في الولايات المتحدة والصين:
UNION ALL

SELECT E_Name FROM Employees_USA

النتيجة
E_Name
Zhang, Hua
Bush, George
Wang, Wei
Yang, Ming
Adams, John
Carter, Thomas

UNIONالتعليق:

SELECT E_Name FROM Employees_China

لا يمكن لهذا الأمر إدراج جميع الموظفين في الولايات المتحدة والصين. في المثال السابق، هناك موظفان يحملان نفس الاسم، وتم إدراج واحد فقط. سيفضل أمر UNION القيم المختلفة فقط.

إعلان 1 أمر UNION ALL و أمر UNION يشبهان بعضهما البعض، ولكن أمر UNION ALL سيقوم بإدراج جميع القيم.
SELECT E_Name FROM Employees_China
إعلان 1 SQL

إعلان 2

استخدام أمر UNION ALL

مثال:

قائمة جميع الموظفين في الولايات المتحدة والصين:
SELECT E_Name FROM Employees_China
UNION ALL

SELECT E_Name FROM Employees_USA

النتيجة
E_Name
Zhang, Hua
Bush, George
Wang, Wei
Yang, Ming
Adams, John
Bush, George
Carter, Thomas