SQLجلب البيانات ضمن شروط محددة
- أهمية وضع الشروط في الإستعلامات
- العوامل المستخدمة في الشروط
- تجهيز قاعدة البيانات التي سنطبق عليها
- أمثلة حول جلب بيانات ضمن شروط محددة
أهمية وضع الشروط في الإستعلامات
نستخدم الأمر WHERE لوضع شروط عند جلب، حذف، و تعديل البيانات.
طريقة استخدامه
الكلمة WHERE تستخدم مع الأمر WHERE على النحو التالي.
مكان الكلمة condition
نكتب الشروط التي نريد تطبيقها عند جلب البيانات.
ستتعلم طريقة استخدام الكلمة WHERE لوضع شروط عند تحديث و حذف البيانات في دروس لاحقة
العوامل المستخدمة في الشروط
بشكل عام، يمكن استخدم العوامل ( Operators ) التالية مع جملة الشروط التي يتم وضعها بواسطة الكلمة WHERE.
العامل | إستخدامه |
---|---|
= | يستخدم هذا الرمز مع الأرقام و النصوص و التواريخ لتنفيذ الأمر في حال كانت القيم التي يتم مقارنتها متساوية. |
!= | يستخدم هذا الرمز مع الأرقام و النصوص و التواريخ لتنفيذ الأمر في حال كانت القيم التي يتم مقارنتها غير متساوية. |
<> | يستخدم هذا الرمز مع الأرقام و النصوص و التواريخ لتنفيذ الأمر في حال كانت القيم التي يتم مقارنتها غير متساوية مثل الرمز != |
> | يستخدم هذا الرمز مع الأرقام و التواريخ لتنفيذ الأمر في حال كانت القيم التي يتم مقارنتها أكبر من قيمة محددة. |
>= | يستخدم هذا الرمز مع الأرقام و التواريخ لتنفيذ الأمر في حال كانت القيم التي يتم مقارنتها أكبر أو تساوي قيمة محددة. |
< | يستخدم هذا الرمز مع الأرقام و التواريخ لتنفيذ الأمر في حال كانت القيم التي يتم مقارنتها أصغر من قيمة محددة. |
<= | يستخدم هذا الرمز مع الأرقام و التواريخ لتنفيذ الأمر في حال كانت القيم التي يتم مقارنتها أصغر أو تساوي قيمة محددة. |
AND | نستخدم هذه الكلمة لتنفيذ الأمر في حال تحقق الشرط الموضوع قبلها و الشرط الموضوع بعدها. هنا يجب أن يتحقق كلا الشرطين حتي يتم تنفيذ الأمر. |
OR | نستخدم هذه الكلمة لتنفيذ الأمر في حال تحقق الشرط الموضوع قبلها أو الشرط الموضوع بعدها. هنا يكفي أن يتحقق إحدى الشرطين حتي يتم تنفيذ الأمر. |
IN | نستخدم هذه الكلمة لتنفيذ الأمر في حال كانت القيمة الموجود قبلها تساوي إحدى القيم الموضوع فيها. |
BETWEEN | نستخدم هذه الجملة لتنفيذ الأمر في حال كانت القيمة موجود بين قيمتين. |
تجهيز قاعدة البيانات التي سنطبق عليها
قم بتنفيذ الإستعلام التالي حتى تنشئ قاعدة بيانات جديدة إسمها harmash
و تنشئ فيها جدول إسمه employees
يحتوي على بيانات 10 موظفين.
المثال
بعد تنفيذ الإستعلام السابق في phpMyAdmin سيتم إنشاء قاعدة البيانات harmash
و إنشاء الجدول employees
بداخلها.
قم بالنقر على إسم قاعدة البيانات harmash
من القائمة اليسرى حتى تبدأ بالتعامل معها و تطبيق ما ستتعلمه في هذا الدرس.
أمثلة حول جلب بيانات ضمن شروط محددة
الإستعلام التالي يجلب كل معلومات الموظف الذي يملك رقم id
يساوي 6
.
المثال الأول
النتيجة
id | first_name | last_name | salary |
---|---|---|---|
6 | Mhamad | Harmush | 700.00 |
عندما الحاجة للوصول لسطر محدد في أي جدول عليك التعامل مع الحقل الموجود فيه و الذي لا يمكن أن يحتوي على قيم مكررة. فمثلاً لا يمكنك الإعتماد على أسماء الأشخاص لأنك قد تجد أكثر من شخص عندهم نفس الإسم.
في جدول الموظفين، بما أن الشيء الوحيد الذي لا يمكن أن يتكرر في الجدول الذي نتعامل معه هو رقم التعرفة id
يمكننا الإعتماد عليه للتمييز بين موظف و آخر.
الإستعلام التالي يجلب معلومات كل موظف يتلقى راتب أكبر أو يساوي 800
دولار.
ملاحظة: يوجد 7 موظفين راتبهم أعلى أو يساوي 800
دولار.
المثال الثاني
النتيجة
id | first_name | last_name | salary |
---|---|---|---|
1 | Ahmad | Alhazem | 800.00 |
3 | Said | Alnaja | 900.00 |
4 | Noura | Jamali | 845.00 |
5 | Amani | Sarrouf | 1000.00 |
7 | Ahmad | Asaadi | 850.00 |
8 | Mostafa | Shawki | 920.00 |
10 | Houssam | Zahrani | 880.00 |
الإستعلام التالي يجلب معلومات كل موظف يتلقى راتب أقل من 800
دولار.
ملاحظة: يوجد 3 موظفين راتبهم أقل من 800
دولار.
المثال الثالث
النتيجة
id | first_name | last_name | salary |
---|---|---|---|
2 | Rami | Algharib | 750.00 |
6 | Mhamad | Harmush | 700.00 |
9 | Jana | Alkassem | 780.00 |
الإستعلام التالي يجلب معلومات كل موظف يتلقى راتب لا يساوي 800
دولار.
ملاحظة: يوجد 9 موظفين راتبهم لا يساوي 800
دولار.
المثال الرابع
يمكن كتابة الإستعلام بهذه الطريقة أيضاً.
النتيجة
id | first_name | last_name | salary |
---|---|---|---|
2 | Rami | Algharib | 750.00 |
3 | Said | Alnaja | 900.00 |
4 | Noura | Jamali | 845.00 |
5 | Amani | Sarrouf | 1000.00 |
6 | Mhamad | Harmush | 700.00 |
7 | Ahmad | Asaadi | 850.00 |
8 | Mostafa | Shawki | 920.00 |
9 | Jana | Alkassem | 780.00 |
10 | Houssam | Zahrani | 880.00 |
الإستعلام التالي يجلب معلومات كل موظف يتلقى راتب أعلى من 2000
دولار.
ملاحظة: لا يوجد أي موظف راتبه أعلى من 2000
دولار.
المثال الخامس
النتيجة
id | first_name | last_name | salary |
---|---|---|---|
الإستعلام التالي يجلب معلومات كل موظف يتلقى راتب أعلى من 800
دولار و إسمه 'Mhamad'
.
ملاحظة: يوجد موظف إسمه 'Mhamad'
و لكن راتبه أقل من 800
دولار و لهذا لن يتم وضعه في النتيجة.
المثال السادس
النتيجة
id | first_name | last_name | salary |
---|---|---|---|
الإستعلام التالي يجلب معلومات كل موظف يتلقى راتب أعلى من 800
دولار أو إسمه 'Mhamad'
.
ملاحظة: يوجد 6 موظفين راتبهم أعلى من 800
دولار، بالإضافة إلى موظف راتبه أقل من 800
دولار و لكن إسمه 'Mhamad'
لهذا سيتم وضعه معهم في النتيجة.
المثال السابع
النتيجة
id | first_name | last_name | salary |
---|---|---|---|
3 | Said | Alnaja | 900.00 |
4 | Noura | Jamali | 845.00 |
5 | Amani | Sarrouf | 1000.00 |
6 | Mhamad | Harmush | 700.00 |
7 | Ahmad | Asaadi | 850.00 |
8 | Mostafa | Shawki | 920.00 |
10 | Houssam | Zahrani | 880.00 |
الإستعلام التالي يجلب معلومات كل موظف يتلقى راتب يساوي 800
أو 850
أو 900
دولار.
ملاحظة: يوجد 3 موظفين راتبهم أقل من 800
دولار.
المثال الثامن
النتيجة
id | first_name | last_name | salary |
---|---|---|---|
1 | Ahmad | Alhazem | 800.00 |
3 | Said | Alnaja | 900.00 |
7 | Ahmad | Asaadi | 850.00 |
المثال التاسع
الإستعلام التالي يجلب معلومات كل موظف يتلقى راتب بين 800
و 900
دولار.
ملاحظة: يوجد 5 موظفين راتبهم يتراوح بين 800
و 900
دولار.
الإستعلام
يمكن كتابة الإستعلام بهذه الطريقة أيضاً.
النتيجة
id | first_name | last_name | salary |
---|---|---|---|
1 | Ahmad | Alhazem | 800.00 |
3 | Said | Alnaja | 900.00 |
4 | Noura | Jamali | 845.00 |
7 | Ahmad | Asaadi | 850.00 |
10 | Houssam | Zahrani | 880.00 |