9 دورة الـ SQL || قيود جمل الاستعلام
.
.
أحبتي الكرام

بعد أن عرفنا نظرياً في الدرس السابق .. مفهوم تقييد جملة الاستعلام .. وصياغة الشروط عليها ..
سنتعلم في هذا الدرس بمشيئة الله .. صياغة القيود أو الشروط على جملة الإستعلام عملياً ..

من المفترض بإذن الله بعد الإنتهاء من هذا الدرس وتطبيقه .. أن تكون قادراً على الوصول إلى النتيجة التي تريدها من قاعدة البيانات بكل دقة

=========
=====
===
=

لديك قاعدة بيانات ضخمة جداً .. كقاعدة بيانات مستشفى .. وتريد الوصول إلى معلومة دقيقة .. مثلاُ:
تريد معرفة اسم الدكتور الذي كان في عيادة رقم 5 يوم 15-10-1431هـ

من الطبيعي أن تكون الإجابة موجودة في جدول العيادات .. ولكنك لا تريد استرجاع معلومات جدول العيادات كاملاً .. فما الطريقة الآن؟؟
بالتأكيد ستقوم باسترجاع حقل (اسم الدكتور) من جدول (العيادات) بحيث يكون حقل (التاريخ) = 15-10-1431هـ

وبهذه الطريقة وصلنا لمرادنا بدقة .. وهنا تبرز مهارة مبرمج قواعد البيانات .. في هيكلته لقواعد البيانات .. وفي صياغة جمل استعلام مركزة .. تصيب الهدف بكل سهولة ويسر ..

=========
=====
===
=

في الدروس السابقة .. استعملنا كلمتين رئيسيتين هما: select - from
وعرفنا أنهما مع بعض تستخدم لتحديد الحقول والجدول الذي تريد الاستعلام منه

والآن سنتعلم الكلمة الثالثة وهي: where
وهي تضاف لجملة الاستعلام .. لتحديد الشرط على الاستعلام .. ولكي يتضح معناها أكثر نرجمها بكلمة (بحيث)

:: تقول ::: استخرج لي حقل كذا .. من جدول كذا .. بحيث يكون كذا = كذا

**************

.. صياغة الشرط (Where) هكذا:

(( where field_name = value ))

::: شرح جزئيات الصياغة السابقة :::

where: كلمة رئيسية .. وهي تفيد تحديد الشرط الذي سيقيد به الاستعلام .. وهي تستخدم مع Select لتحديد البيانات المطلوبة ..
field_name: اسم الحقل الذي سيتم فرض القيد عليه ..
=: علاقة المقارنة .. وهناك العديد من علاقات المقارنة سنفصلها بعد قليل .. بمشيئة الله
value: القيمة ..

علاقات المقارنة:

= تساوي
< أكبر من
> أصغر من
=> أصغر من أو يساوي
=< أكبر من أو يساوي
<> لايساوي
=! لايساوي
=^ لايساوي

::::

إذا كان البحث عن أرقام .. فتكتب الأرقام مباشرة بعد رمز علاقة المقارنة مباشرة

كود PHP:
كود:
select * from Products where ProductID = 76 select * from Products where ProductID < 76 select * from Products where ProductID > 76
إذا كان البحث عن كلمة .. فتكتب الكلمة بين علامتي تنصيص ""

كود PHP:
select * from customer where city = "القاهرة"


إذا أردت حصر البحث بين تاريخين .. فيكون البحث باستخدام الاداة BETWEEN .... AND .. ويكتب التاريخين بين علامة المربع # .. والذي يسمى (هاش)

كود PHP:
كود:
SELECT CUST_ID , ID_NO , DATE FROM CUSTHSTRY where date between #1/1/1996# And #2/1/1997#
إذا كان البحث عن قيم رقمية محددة .. مثلاً:
أعرض لي الاصناف التي يتوفر منها في المستودع عدد كذا وكذا وكذا ..
فيكون ذلك باستخدام الكلمة IN:

كود PHP:
كود:
SELECT * FROM Inventory where ONSTOCK in (1,7,20)
إلى هنا ينتهي درسنا .. وما زال هناك العديد من النقاط .. سنستكملها فيما بعد بمشيئة الله .. لأني أرى أن معلومات هذا اليوم دسمة جداً .. أرجو تطبيقها أكثر من مرة .. والتدرب عليها حتى تتضح الصورة أكثر .. وأي استفسار أطرحوه بلا تردد

** اعتذر عن رداءة التنسيق لكن هذا ما أسعفني الوقت به **


الواجب: طبق عملياً 10 محاولات استعلام مختلفة على أكثر من جدول .. واحطنا بالكود وصورة النتيجة