ဆက်စပ်ဇယားများကွင်းဆက်

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

ကျွန်ုပ်တို့၏ ဇယားများကို ကြည့်ရအောင်။ နိုင်ငံများအတွက် ဇယား-

countries
id name
1 country1
2 country2

မြို့များအတွက် ဇယား-

cities
id name country_id
1 city1 1
2 city2 1
3 city3 2

သုံးစွဲသူများအတွက် ဇယားသည် မပြောင်းလဲဘဲ ရှိနေမည်-

users
id name city_id
1 user1 1
2 user2 1
3 user3 2
4 user4 1
5 user5 3
6 user6 2

Query များ

သုံးစွဲသူများကို ၎င်းတို့၏ မြို့များနှင့် နိုင်ငံများနှင့် အတူရယူရန်၊ ကျွန်ုပ်တို့သည် join နှစ်ကြိမ် ပြုလုပ်ရပါမည်- ပထမ join သည် မြို့များကို သုံးစွဲသူများထံသို့ ချိတ်ဆက်ပေးပြီး ဒုတိယ join သည် နိုင်ငံများကို မြို့များထံသို့ ချိတ်ဆက်ပေးမည်-

sqlSELECT 
  users.name,
  cities.name as city_name,
  countries.name as country_name
FROM 
  users
LEFT JOIN cities ON cities.id=users.city_id
LEFT JOIN countries ON countries.id=cities.country_id

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

Задание 1

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

Задание 2

ထုတ်ကုန်များကို ၎င်းတို့၏ ကဏ္ဍခွဲများနှင့် ကဏ္ဍများနှင့် အတူရယူသော query တစ်ခုကို ရေးပါ။

Задание 3

ကဏ္ဍခွဲများကို ၎င်းတို့၏ ကဏ္ဍများနှင့် အတူရယူသော query တစ်ခုကို ရေးပါ။