MySQL سیلف جوائن اور مثالیں کب استعمال کریں۔

When Use Mysql Self Join



مائی ایس کیو ایل سیلف جوائن ایس کیو ایل جوائن کی ایک قسم ہے جو آپ کو خود ٹیبل میں شامل ہونے دیتی ہے۔ یہ جوائن کی دیگر اقسام جیسے اندرونی یا بائیں جوڑ کی شق کو استعمال کرکے کام کرتا ہے جو کہ مخصوص شرائط کی بنیاد پر قطاروں کو جوڑتا ہے۔

یہ ٹیوٹوریل آپ کو دکھائے گا کہ کس طرح MySQL سیلف جوائن کو ٹیبل کو اپنے ساتھ ضم کرنے اور اپنی مرضی کے مطابق ڈیٹا بنانے کے لیے استعمال کریں۔







بنیادی استعمال۔

ایس کیو ایل سیلف جوائن ٹیبل عرفی استعمال کرتا ہے اس بات کو یقینی بنانے کے لیے کہ آپ ایک ہی ٹیبل کو ایک بیان میں ایک سے زیادہ بار نہیں دہرائیں۔



نوٹ: اگر آپ ٹیبل عرف سے واقف نہیں ہیں تو ، ہمارے دوسرے ٹیوٹوریل پر غور کریں جو اس تصور کو مکمل طور پر بیان کرتا ہے۔



سیلف جوائن کے استعمال کا عمومی نحو دو ٹیبلز کو ملا کر ایک جیسا ہوتا ہے۔ تاہم ، ہم ٹیبل عرفی استعمال کرتے ہیں۔ ذیل میں دکھائے گئے سوال پر غور کریں:





منتخب کریں عرف 1،عرف 2 سے tbl1 عرف 1۔،tbl2 عرف 2۔ کہاں [حالت]

مثال استعمال کے معاملات۔

آئیے ایس کیو ایل سیلف جوائنز کو انجام دینے کا طریقہ سمجھنے کے لیے مثالیں استعمال کریں۔ فرض کریں کہ آپ کے پاس مندرجہ ذیل معلومات کے ساتھ ایک ڈیٹا بیس ہے (نیچے مکمل استفسار دیکھیں)

ڈراپ اسکیما اگر موجود خود؛
بنانا اسکیما خود؛
استعمال کریں۔ خود؛
بنانا ٹیبل صارفین(
آئی ڈی INT بنیادی چابی خودکار اضافہ ،
پہلا نام ورچار (255۔)،
ای میل ورچار (255۔)،
ادائیگی_ آئی ڈی INT ،
سبسکرپشن INT
)؛
داخل کریں INTO صارفین(پہلا نام،ای میل،ادائیگی_ آئی ڈی،سبسکرپشن) قیمتیں ('والری جی فلپ'، '[ای میل محفوظ]'، 10001۔، )، ('شان آر کہانیاں'، '[ای میل محفوظ]'، 10005۔، )، ('بابی ایس نیوزوم'، '[ای میل محفوظ]'، 100010۔، )؛

ہم ایک INNER شمولیت سے شروع کریں گے اور آخر میں ایک بائیں شمولیت سے۔



اندرونی شمولیت کا استعمال کرتے ہوئے سیلف جوائن کریں۔

مندرجہ ذیل استفسار اوپر بنائی گئی میز پر ایک INNER جوائن کرتا ہے۔

منتخب کریں al1.* سے صارفین al1 اندرونی شامل ہوں صارفین al2 پر al1. سبسکرپشن=al2. سبسکرپشن آرڈر بائی۔ آئی ڈی ڈی ای ایس سی۔ ؛

آؤٹ پٹ نیچے دکھایا گیا ہے:

لیفٹ جوائن کا استعمال کرتے ہوئے سیلف جوائن کریں۔

ذیل کی مثال کے استفسار کی وضاحت کرتا ہے کہ ہم بائیں شمولیت کے ساتھ سیلف جوائن کو کیسے استعمال کرسکتے ہیں۔

منتخب کریں ( کنکٹ (al1.first_name، '->'،al2.email)) اے ایس تفصیلات،al1.payment_id سے صارفین al1 بائیں شامل ہوں صارفین al2 پر al1.id=al2.id؛

آؤٹ پٹ کا نتیجہ ذیل میں ہے:

نتیجہ

یہ گائیڈ آپ کو بتاتا ہے کہ آپ اپنے ساتھ ٹیبل میں شامل ہونے کے لیے ایس کیو ایل سیلف جوائن کا استعمال کیسے کر سکتے ہیں۔

پڑھنے کے لیے شکریہ۔