معاملات الربط والمقارنة بين نتائج الاستعلامات في لغة البرمجة SQL

اقرأ في هذا المقال


معاملات الربط بين نتائج الاستعلامات في لغة البرمجة SQL

تستخدم لغة البرمجة (SQL) كغيرها من لغات البرمجة مجموعة من المعاملات والتي تستخدم في عملية دمج نتائج عدد من الاستعلامات، حيث يتم ذلك من خلال ثلاثة معاملات رئيسية وهي الاتحاد (UNION)، والتقاطع (INTERSECT)، والاستثناء (EXCEPT)، وفيما يلي استخدام كل معامل من هذه المعاملات:

المعاملالاستخدام
UNION

حيث يتم من خلال هذه المعامل احتواء نتائج كافة الاستعلامات التي يربط بينها المعامل (UNION) دون أي تكرار في السجلات.

INTERSECT

يتم من خلال هذا المعامل تنفيذ عملية تقاطع النتائج ما بين الاستعلامات، أي إظهار النتائج المشتركة فقط ما بين الاستعلامات التي يربط بينها المعامل (INTERSECT).

EXCEPT

يتم من خلال هذا المعامل تنفيذ عملية استثناء نتائج الاستعلام الذي يلي المعامل (EXCEPT)، وتختلف الكلمة المفتاحية لهذا المعامل في محرك (Oracle) إذ يتم استخدام (MINUS) بدلاص من (EXCEPT).

معاملات المقارنة في لغة البرمجة SQL

تستخدم لغة البرمجة (SQL) كغيرها من لغات البرمجة المختلفة مجموعة من المعاملات في إجراء عملية مقارنة نتائج عدد من الاستعلامات وفق ثلاثة معاملات رئيسية وهي (SOME) و (ANY) و (ALL) بهدف المقارنة مع القيم الناتجة لعمود معين، وفيما يلي استخدامات هذه المعاملات:

المعامل الاستخدام
ANY

حيث يستخدم هذا المعامل في عملية المقارنة ويعيد قيمة (TRUE) في حال تطابق التعبير مع قيمة أي سجل من السجلات الناتجة عن عملية الاستعلام الفرعي ويعيد قيمة (FALSE) في حال عدم وجود أي نتيجة مطابقة.

ALL

يستخدم هذا المعامل في إجراء عملية المقارنة حيث يعيد هذا المعامل قيمة (TRUE) في حال تطابق التعبير مع كل قيمة موجودة في السجلات الناتجة عن إجراء عملية الاستعلام الفرعي، ويعيد قيمة (FALSE) في حال عدم وجود نتيجة مخالفة واحدة على الأقل.

SOME

يستخدم هذا المعامل في إجراء عمليات المقارنة حيث يعيد هذا المعامل قيمة (TRUE)، وفي حال وجود بعض القيم في السجلات الناتجة عن الاستعلام الفرعي والمطابقة لقيمة التعبير الذي تُقارن معه، ومن الممكن اعتبار هذا المعامل مماثل لنتيجة المعامل (ANY).

المصدر: 13.2.10.3 Subqueries with ANY, IN, or SOMESQL ANY and ALL OperatorsDifferences Between UNION EXCEPT and INTERSECT Operators in SQL ServerSQL UNION Operator


شارك المقالة: