SQL الانضمام على شروط متعددة

Sql Alandmam Ly Shrwt Mt Ddt



تعد الصلات واحدة من أكثر الميزات شيوعًا لقواعد البيانات العلائقية. تشير عمليات ضم SQL إلى عملية دمج البيانات من جدولين أو أكثر في مجموعة نتائج واحدة بناءً على الميزات القياسية أو الأعمدة.

يسمح لنا الانضمام إلى الجداول باسترداد البيانات المخزنة عبر جداول متعددة في استعلام واحد مما يجعلها أداة قوية لتحليل البيانات وإعداد التقارير.







في هذا البرنامج التعليمي ، سوف نكتشف كيفية تنفيذ صلات SQL بشروط متعددة. سوف نتعلم استخدام عوامل التشغيل المنطقية 'AND' و 'OR' للانضمام إلى البيانات بناءً على شروط متعددة.



SQL ينضم على شروط متعددة

يمكننا تحديد شروط متعددة باستخدام عوامل التشغيل AND أو OR في SQL. تسمح لنا هذه العوامل بتحديد مجموعة من التعبيرات المنطقية التي يتم تقييمها بعد ذلك ومقارنتها بالمجموعة الناتجة.



نستخدم عامل التشغيل AND للتأكد من صحة جميع الشروط المحددة. إذا كان أحد الشروط غير صحيح ، فسيتم تحويل التعبير بالكامل إلى false. هذا يجعل عامل التشغيل AND أداة استثنائية لتصفية البيانات القصوى.





من ناحية أخرى ، نستخدم عامل التشغيل OR عندما نحتاج إلى شرط واحد على الأقل ليكون صحيحًا. وهذا يجعلها طريقة 'فضفاضة' لتصفية البيانات حيث يجب أن يفي السجل الناتج بمعامل واحد محدد على الأقل.

لا تتغير وظائف عوامل التشغيل AND و OR حتى في حالة انضمام SQL.



مثال انضمام متعدد SQL

لفهم كيفية التعامل مع الصلات بشروط متعددة ، من الأفضل العمل بمثال.

في هذا العرض التوضيحي ، نستخدم قاعدة بيانات Sakila التي تم تطويرها لاستكشاف الإمكانات الكاملة لـ SQL.

لنفترض أننا نريد جلب البيانات من الفيلم وجداول film_actor. أولاً ، نريد أن نجد جميع الممثلين الذين لعبوا دور البطولة في الفيلم والذين تم تصنيفهم إما PG أو PG-13 ويبلغ طولهم ما بين 90 و 120.

في مثل السيناريو ، نحتاج إلى إجراء صلة بشروط متعددة كما هو موضح في ما يلي:

حدد الفاعل ، الاسم الأول ، الفاعل ، الاسم الأخير ، الفيلم ، العنوان ، الفيلم ، الإصدار_العام ، التصنيف.
من ممثل
الانضمام إلى film_actor ON actor.actor_id = film_actor.actor_id
الانضمام إلى الفيلم على film_actor.film_id = film.film_id
أين الفيلم. الطول بين 90 و 120
والفيلم ( 'PG' و 'PG-13' ) ؛


كما ترى من الاستعلام السابق ، فإننا نطلب من SQL أن تقوم بربط بين الممثل وجداول film_actor بناءً على عمود معرف_الممثل. نقوم أيضًا بربط بين film_actor وجداول الأفلام باستخدام عمود film_id. نضمن أيضًا تحديد شرطين باستخدام بند WHERE لتصفية جدول النتائج بناءً على سنة الإصدار وطول الفيلم.

الجدول الناتج هو كما يلي:


يمكننا أيضًا تحديد الشروط المتعددة بناءً على عامل التشغيل OR كما هو موضح في نموذج الاستعلام التالي:

حدد film.title، film.rental_rate، category.name
من فيلم
الانضمام إلى film_category ON film.film_id = film_category.film_id
فئة الانضمام على film_category.category_id = category.category_id
أين يوجد اسم category.name ( 'فعل' و 'كوميديا' )
و film.rental_rate > 3.00 ؛


الجدول الناتج هو كما يلي:

خاتمة

استكشف هذا البرنامج التعليمي كيفية العمل مع صلات SQL بناءً على شروط متعددة باستخدام عوامل التشغيل AND و OR. يوفر هذا مزيدًا من تصفية البيانات الدقيقة.