حاولت ابحث لك عن شرح جاهز ويكون مبسط. وهذا قد يفي بالغرض : ما هى ال joins ؟ و ما انواعها و فيما تستخدم ؟
ملاحظات تهمك (تعقيب على الشرح ) :
الـ INNER JOIN يكتب على ثلاث صيغ (بما أنه الربط الإفتراضي) .
SELECT s.stor_id, d.discounttype
FROM stores s JOIN discounts d
ON s.stor_id = d.stor_id
SELECT s.stor_id, d.discounttype
FROM stores s INNER JOIN discounts d
ON s.stor_id = d.stor_id
الصيغيتن التي بالأعلى متشابهه وهي على صيغة ANSI-92 standard وهي الصيغة الحديثة وستعطي نفس النتائج سواء تم كتابة الـ JOIN بخيار الـ INNER او بدونه.
اما الصيغة التالية :
select s.store_id, d.discounttype
from stores s, discounts d
where s.store_id=d.store_id
هذه الصيغة هي الصيغة القديمة من الصيغيتين السابقة وهي على صيغة ANSI-89 standards . وعلى الرغم من ان لازالت محركات قواعد البيانات تدعمها, إلا أني لا أنصح بإستخدامها ودائماً نستخدم الصيغ الحديثة لأن محركات قواعد البيانات تستخدم الصيغة الحديثة. أي نضع دائماً الكلمات الدلالية للربط JOIN ونستخدم الـ ON لشرط الربط (عدا الـ CROSS JOIN لايحتاج الى ON).
هذا سيجنبك اي مشاكل قد تحدث بسبب الصيغ (لان محركات قواعد البيانات في تحديث مستمر, واحتمالية تخلصها من الصيغ القديمة عالية).
إذا كان هنالك أي استفسار حول الشرح بالرابط المدرج أعلاه, يرجى طرحه وسأحاول أن اجيب عليه بإذن الله.