استرجاع البيانات من جداول متعددة مع انضمام SQL الداخلية

ينضم Inner معلومات الإرجاع التي تظهر في قاعدتي بيانات أو أكثر

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

اختر اسم العائلة ، الاسم الأول ، العلامة من السائقين ، المركبات أين يوجد drivers.location = vehicles.location

وهنا النتائج:

lastname firstname tag
----------- ------------ ----
بيكر رولاند H122JM
سميث مايكل D824HA
Smythe مايكل P091YF
جاكوبس أبراهام J291QR
جاكوبس أبراهام L990MT

لاحظ أن النتائج هي بالضبط ما تم البحث عنه. من الممكن زيادة تنقيح الاستعلام عن طريق تحديد معايير إضافية في جملة WHERE. لنفترض أن الاستعلام الأصلي يتطابق مع برامج التشغيل مع المركبات التي لا يُسمح لها بالقيادة (سائقو الشاحنات إلى السيارات والعكس). يمكنك استخدام الاستعلام التالي لحل هذه المشكلة:

SELECT lastname، firstname، tag، vehicles.class FROM drivers، vehicles WHERE drivers.location = vehicles.location AND drivers.class = vehicles.class

يحدد هذا المثال جدول المصدر لسمة الفئة في جملة SELECT لأن الفئة مبهمة - تظهر في كلا الجدولين. عادة ما تحدد الشفرة عمود الجدول الذي يجب تضمينه في نتائج الاستعلام. في هذه الحالة ، لا يحدث اختلاف ، حيث أن الأعمدة متطابقة ويتم ضمها باستخدام equijoin. ومع ذلك ، إذا احتوت الأعمدة على بيانات مختلفة ، فإن هذا التمييز سيكون حرجًا. فيما يلي نتائج هذا الاستعلام:

lastname firstname class class
---------- ------------ ---- ------
Baker Roland H122JM Car
Smythe Michael D824HA شاحنة
جاكوبس أبراهام J291QR السيارات

اقتربت الصفوف المفقودة من مايكل سميث إلى سيارة وأبراهام جاكوبس إلى شاحنة ، وسيارات لم يكن مخولا لها بقيادة السيارة.

يمكنك أيضًا استخدام الصلات الداخلية لدمج البيانات من ثلاثة جداول أو أكثر .