متى تستخدم الانضمام الذاتي إلى MySQL والأمثلة

When Use Mysql Self Join



MySQL Self-Join هو نوع من SQL Join الذي يسمح لك بضم جدول إلى نفسه. إنه يعمل عن طريق استخدام أنواع الصلة الأخرى مثل جملة الصلة الداخلية أو اليسرى لدمج الصفوف بناءً على الشروط المحددة.

سيوضح لك هذا البرنامج التعليمي كيفية استخدام الانضمام الذاتي إلى MySQL لدمج جدول مع نفسه وإنشاء بيانات مخصصة.







الاستخدام الأساسي

يستخدم MySQL self-Join الأسماء المستعارة للجدول لضمان عدم تكرار نفس الجدول أكثر من مرة في عبارة واحدة.



ملاحظة: إذا لم تكن معتادًا على الأسماء المستعارة للجدول ، ففكر في البرنامج التعليمي الآخر الذي يشرح المفهوم بالكامل.



يشبه بناء الجملة العام لاستخدام صلة ذاتية واحد عند دمج جدولين. ومع ذلك ، فإننا نستخدم الأسماء المستعارة للجدول. ضع في اعتبارك الاستعلام الموضح أدناه:





تحديد الاسم المستعار 1.colsوالاسم المستعار 2.cols من عند الاسم المستعار tbl11وtbl2 alias2 أين [شرط]

أمثلة على حالات الاستخدام

دعنا نستخدم أمثلة لفهم كيفية أداء الصلات الذاتية في MySQL. لنفترض أن لديك قاعدة بيانات بالمعلومات التالية (انظر الاستعلام الكامل أدناه)

قطرة مخطط لو EXISTS الذات؛
يزيد مخطط الذات؛
استعمال الذات؛
يزيد طاولة المستخدمين(
هوية شخصية ذكاء المفتاح الأساسي زيادة تلقائية و
الاسم الأول فاركار (255)و
البريد الإلكتروني فاركار (255)و
معرف الدفع ذكاء و
الاشتراك ذكاء
)؛
إدراج إلى المستخدمين(الاسم الأولوالبريد الإلكترونيومعرف الدفعوالاشتراك) القيم ('فاليري جي فيليب'و '[بريد إلكتروني محمي]'و 10001و 1)و ('شون ر ستوريز'و '[بريد إلكتروني محمي]'و 10005و 2)و ('بوبي إس نيوسوم'و '[بريد إلكتروني محمي]'و 100010و 5)؛

سنبدأ بضم INNER وأخيراً بوصلة يسارية.



الانضمام الذاتي باستخدام الانضمام الداخلي

يقوم الاستعلام أدناه بتنفيذ صلة داخلية في الجدول الذي تم إنشاؤه أعلاه.

تحديد آل 1.* من عند المستخدمين al1 داخلي انضم المستخدمين al2 تشغيل al1.subscription=al2.subscription ترتيب حسب هوية شخصية تنازلي ؛

الإخراج موضح أدناه:

الانضمام الذاتي باستخدام الانضمام الأيسر

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

تحديد ( CONCAT (al1.first_nameو '->'وal2.email)) كما تفاصيلوal1.payment_id من عند المستخدمين al1 اليسار انضم المستخدمين al2 تشغيل al1.id=al2.id؛

نتيجة الإخراج أدناه:

استنتاج

يرشدك هذا الدليل إلى كيفية استخدام الانضمام الذاتي إلى MySQL للانضمام إلى جدول مع نفسه.

شكرا لقرائتك.