Uzao Mwingi katika Uhusiano wa Kifamilia katika Python
Katika somo lilopita, baba alikuwa na uwezo wa kuwa na
mwana mmoja tu. Hii ilipatikana kwa sababu,
baba alikuwa na uhusiano son_id.
Hebu sasa baba aweze kuwa na wana
wengi. Katika kesi hii, bado tunaweza
kutengeneza jedwali moja tu, ambalo litakuwa
limehusishwa lenyewe na lenyewe. Tu katika uwanja wa uhusiano
tutahifadhi sio id ya mwana, bali id
ya baba. Katika kesi hii, watumiaji kadhaa wataweza
kurejelea baba yao - na kwa hivyo
baba atakuwa na wana wengi:
| id | jina | baba_id |
|---|---|---|
| 1 | mtumiaji1 | 3 |
| 2 | mtumiaji2 | 3 |
| 3 | mtumiaji3 | 4 |
| 4 | mtumiaji4 | null |
Kupata mtumiaji pamoja na baba yake inaweza kufanyika kama ifuatavyo:
SELECT
watumiaji.name as jina_la_mtumiaji,
baba.name as jina_la_baba
FROM
watumiaji
LEFT JOIN watumiaji as baba ON baba.id=watumiaji.baba_id
Hebu tuchukulie tuna watumiaji. Kila mtumiaji ana baba na mama. Andika muundo wa uhifadhi.
Andika ombi ambalo litamtoa mtumiaji pamoja na baba yake na mama yake.