تحدثنا فى درس سابق عن الأمر select وتكلمنا أنه يمكن استخدام جملة where مع الأمر select لاسترجاع بيانات حقول معينة وفق شرط معين
اضغط هنا للرجوع إلى الدرس السابق
فلوضع أكثر من معيار فى جملة select نستخدم المعامل and لربط أكثر من معيار مع بعضهم البعض فالاسترجاع جميع حقول جدول المعلمين teachers والذين يعملون بالمدرسة التى كودها schoolid=2 ويقومون بتدريس المادة التى كودها subjectid=3 نستخدم الجملة الموضحة بالشكل.
فعند الرغبة فى استرجاع بيانات جميع المعلمين teachers من جدول المعلمين teachers الذين يعملون بالمدرسة التى لها رقم الكود=2 ( schoolid=2)
ويقومون بتدريس إما المادة التى لها رقم الكود =2 (subjectid=2)أو المادة التى لها رقم الكود =3 ( subjectid=3)
نلاحظ أنه لو تم كتابة الجملة السابقة بدون
وضع أقواس كما هو موضح بالشكل فيكون المعنى قم باسترجاع بيانات جميع
نلاحظ أنه تم عرض بيانات جميع المعلمين
الذين لهم رقم المدرسة =2 ويقومون بتدريس المادة التى لها رقم =2 subjectid=2 وقام بعرض بيانات جميع المعلمين الذين يقومون
بتدريس المادة التى لها رقم كود =3 subjectid=3
بغض
النظر عن المدرسة التى يعملون بها
نلاحظ أنه تم عرض بيانات جميع المعلمين فى
جميع المدارس ما عدا تلك المدارس التى لها رقم 2 أو رقم 3
ولعرض بيانات جميع المعلمين ماعدا الذين
يعملون فى المدرسة التى لها رقم 2 schoolid=2 أو الذين يقومون بتدريس المادة التى لها
رقم 2 subjectid=2 نستخدم جملة SQL الموضحة بالشكل
نلاحظ أنه تم عرض بيانات جميع المعلمين ماعدا المعلمين الذين يعملون بالمدرسة التى لها رقم الكود =2
اضغط هنا للرجوع إلى الدرس السابق
المعامل and
المعامل and يقوم بعرض النتائج إذا تحققت جميع الشروط
ولكن إذا كان هناك أكثر من معيار أو شرط فإننا نستخدم المعامل and للربط بين الشرطينفلوضع أكثر من معيار فى جملة select نستخدم المعامل and لربط أكثر من معيار مع بعضهم البعض فالاسترجاع جميع حقول جدول المعلمين teachers والذين يعملون بالمدرسة التى كودها schoolid=2 ويقومون بتدريس المادة التى كودها subjectid=3 نستخدم الجملة الموضحة بالشكل.
SELECT* from teachers where schoolid=2 and subjectid=3
نلاحظ أنه تم استرجاع هذين السجلين والذين
ينطبق عليهم المعيارين أوالشرطين الذين تم ذكرهم فى الاستعلام السابق.
المعامل OR
المعامل OR يعرض النتائج إذا تحقق شرط واحد على الأقل من الشروط
المعامل or يقوم بارجاع النتائج إذا تحقق شرط واحد
على الأقل ففي هذا المثال يقوم بإرجاع جميع سجلات المعلمين الذين يعملون فى
المدرسة التى لها الكود رقم 2schoolid= أو
الذين يقومون بتدريس المادة التى لها
الكود رقم subjectid=3
select*from teachers where schoolid=2 OR subjectid=3
نلاحظ أنه تم استرجاع جميع سجلات المعلمين
الذين يعملون فى المدرسة التى لها رقم الكود schoolid=2 بغض النظر عن المادة التى يقومون بتدريسها
، وكذلك تم استرجاع جميع السجلات للمعلمين الذين يقومون بتدريس المادة التى لها
رقم الكود subjectid=3 بغض
النظر عن المدرسة التى يعملون بها
المعامل NOT
يقوم المعامل NOT بارجاع البيانات إذا كان الشرط غير صحيح
ففي هذا المثال يقوم بارجاع جميع سجلات المعلمين الذين يعملون فى جميع
المدارس ماعدا المعلمين الذين يعملون فى المدرسة التى لها رقم الكود =3 (schoolid=3)
SELECT* from teachers where NOT schoolid=3
نلاحظ أنه تم ارجاع سجلات جميع المعلمين teachers فى
جدول المعلمين teachers
ماعدا المعلمين الذين يعملون فى المدرسة التى لها رقم الكود =3
اشتراك المعامل AND مع المعامل OR مع المعامل NOT
كما يمكن أن يشترك أكثر من معامل مع بعضهم البعض مثل اشتراك المعامل AND مع المعامل ORفعند الرغبة فى استرجاع بيانات جميع المعلمين teachers من جدول المعلمين teachers الذين يعملون بالمدرسة التى لها رقم الكود=2 ( schoolid=2)
ويقومون بتدريس إما المادة التى لها رقم الكود =2 (subjectid=2)أو المادة التى لها رقم الكود =3 ( subjectid=3)
لابد من وضع قوسين بين جملتى
subjectid=2 or
subjectid=3 كما هو موضح بالشكل التالي:-
نلاحظ أنه تم عرض بيانات الجدول كما هو
موضح بالشكل حيث تم استرجاع سجلات المعلمين الذين يعملون فى المدرسة التى لها رقم الكود =2 schoolid=2 ويقومون بتدريس إما المادة التى لها رقم الكود
=2 أو 3 subjectid=2 or
subjectid=
المعلمين الذين لهم رقم المدرسة schoolid=2 ويقومون
بتدريس المادة التى لها رقم =2 subjectid=2
او قم باسترجاع
بيانات جميع المعلمين الذين يقومون بتدريس
المادة التى لها رقم =3
schoolid=3 بغض النظر عند المدرسة التى يعملون بها
استخدام المعامل NOT مع المعامل AND
كما نستخدم معامل ANDمع المعامل NOT فمثلا لاسترجاع بيانات جميع المعلمين الذين
لا يعملون فى المدرسة التى لها رقم =2 schoolid=2
والتى لها رقم =3 schoolid=3
نستخدم جملة SQL الموضحة
Schoolid=2 أو
schoolid3
نلاحظ أنه تم عرض بيانات جميع المعلمين ماعدا المعلمين الذين يعملون بالمدرسة التى لها رقم الكود =2
Schoolid=2 أو
المعلمين الذين يقومون بتدريس المادة التى لها رقم 2 subjectid=2
ليست هناك تعليقات:
إرسال تعليق