⊗pyPmDOFR 126 of 129 menu

Python တွင် ဒေတာဆိုင်ရာ ဆက်နွယ်မှုများ

ကျွန်ုပ်တို့ရှေ့တွင် ဖခင်များနှင့် သားများကို သိမ်းဆည်းရန် တာဝန်ရှိသည်ဆိုပါစို့။ ဖခင်တစ်ဦးစီတွင် သားတစ်ယောက်သာ ရှိနိုင်ပြီး၊ သားသည်လည်း ၎င်း၏ကိုယ်ပိုင်သားတစ်ယောက် ရှိနိုင်သည်။

ဒေတာများကို မည်သို့သိမ်းဆည်းမည်ကို စဉ်းစားရန် လိုအပ်သည်။ ပထမဆုံး စိတ်ကူးမှာ ဇယားနှစ်ခု ပြုလုပ်ရန် ဖြစ်နိုင်သည် - ဖခင်များအတွက် parents ဇယားနှင့် သားများအတွက် sons ဇယား။ ထို့နောက် ဤဇယားများကို အကွက်တစ်ခုခုဖြင့် ချိတ်ဆက်ရန်- son_id သို့မဟုတ် parent_id

သို့သော်၊ ဤစိတ်ကူးသည် အလွန်ကောင်းမွန်သော စိတ်ကူးမဟုတ်ပါ - အဘယ်ကြောင့်ဆိုသော် လူတစ်ဦးတည်းသည် တစ်ချိန်တည်းမှာပင် ဖခင်လည်းဖြစ်နိုင်သလို သားလည်းဖြစ်နိုင်သည် - ထို့ကြောင့် ၎င်းကို ဇယားနှစ်ခုစလုံးတွင် သိမ်းဆည်းရန် လိုအပ်မည်၊ ထိုသို့ပြုလုပ်ခြင်းသည် မအီမသာဖြစ်စေပြီး နေရာပိုလိုအပ်စေကာ အမှားများ ဖြစ်ပွားစေရန် လွယ်ကူသည်။

ပိုမိုကောင်းမွန်သောရွေးချယ်မှုမှာ ဇယားကို ၎င်း၏ကိုယ်ပိုင်နှင့် ချိတ်ဆက်ရန်ဖြစ်သည်- users ဇယားတစ်ခု ပြုလုပ်ကြပါစို့။ ၎င်းအတွင်း၌ သက်ဆိုင်ရာယူဆာအားလုံးကို သိမ်းဆည်းပြီး တစ်ဦးစီအတွက် son_id အကွက်ပြုလုပ်မည်၊ ထိုအကွက်အတွင်း၌ ထိုဇယားမှပင် id သားကို သိမ်းဆည်းမည်-

users
id name son_id
1 user1 2
2 user2 3
3 user3 null

မေးမြန်းချက်များ

ယခု ၎င်း၏သားနှင့်အတူ ယူဆာကို ထုတ်ယူပေးမည့် မေးမြန်းချက်တစ်ခုကို ရေးကြပါစို့။

အစပိုင်းတွင် ယူဆာများကို ထုတ်ယူကြည့်ရအောင်-

SELECT * FROM users

ယခု ယူဆာများနှင့် ၎င်းတို့၏သားများကို ပေါင်းစည်းကြမည်။ ကျွန်ုပ်တို့သည် ဇယားကို ၎င်း၏ကိုယ်ပိုင်နှင့် ပေါင်းစည်းမည်ဖြစ်သောကြောင့် ၎င်း၏အမည်ပြောင်းလဲမှုကို လုပ်ဆောင်ရန် လိုအပ်သည်-

LEFT JOIN users as sons

ယခု ကျွန်ုပ်တို့သည် အခြေခံဇယားနှင့် အမည်ပြောင်းထားသောဇယားတို့၏ ဆက်သွယ်မှုကို သတ်မှတ်နိုင်သည်-

LEFT JOIN users as sons ON sons.id=users.son_id

ယခု အကွက်များကို သတ်မှတ်ကြမည်-

SELECT users.name as user_name, sons.name as son_name

အားလုံးကို စုစည်းပြီး အောက်ပါ မေးမြန်းချက်ကို ရယူကြမည်-

SELECT users.name as user_name, sons.name as son_name FROM users LEFT JOIN users as sons ON sons.id=users.son_id

လက်တွေ့လေ့ကျင့်ခန်းများ

ကျွန်ုပ်တို့တွင် ကဏ္ဍများ ရှိသည်ဆိုပါစို့။ ကဏ္ဍတစ်ခုစီသည် မိဘကဏ္ဍတစ်ခုခုနှင့် သက်ဆိုင်နိုင်ပြီး၊ ထိုကဏ္ဍသည်လည်း ၎င်း၏ကိုယ်ပိုင်မိဘကဏ္ဍနှင့် သက်ဆိုင်နိုင်ပြီး ထိုသို့ဆက်လက်ဖြစ်ပွားနိုင်သည်။ သိုလှောင်မှုဖွဲ့စည်းပုံကို ရေးဆွဲပါ။

ကဏ္ဍတစ်ခုကို ၎င်း၏မိဘကဏ္ဍနှင့်အတူ ထုတ်ယူပေးမည့် မေးမြန်းချက်တစ်ခုကို ရေးပါ။

ကဏ္ဍတစ်ခုကို ၎င်း၏မိဘနှင့် ဘိုးဘေးတို့နှင့်အတူ ထုတ်ယူပေးမည့် မေးမြန်းချက်တစ်ခုကို ရေးပါ။

ကဏ္ဍတစ်ခုကို ၎င်း၏မိဘ၊ ဘိုးဘေးနှင့် ဘိုးဘေးတို့၏ဘိုးဘေးတို့နှင့်အတူ ထုတ်ယူပေးမည့် မေးမြန်းချက်တစ်ခုကို ရေးပါ။

မြန်မာ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ဝက်ဘ်ဆိုက် လုပ်ဆောင်ခြင်း၊ ဆန်းစစ်လေ့လာခြင်းနှင့် ပုဂ္ဂလိကပြုပြင်ခြင်းအတွက် ကျွန်ုပ်တို့သည် cookie များကို အသုံးပြုပါသည်။ ဒေတာများကို ပြုပြင်ခြင်းသည် ကိုယ်ရေးကိုယ်တာ မူဝါဒအတိုင်း ဖြစ်ပါသည်။
အားလုံးလက်ခံရန် ပြင်ဆင်ရန် ငြင်းပယ်ရန်