Uhusiano wa Kifamilia wenye Vizazi Vingi katika PHP
Katika somo lililopita, baba angeweza kuwa na
mwana mmoja tu. Hii ilipatikana kwa sababu
baba alikuwa na uhusiano son_id.
Hebu sasa baba aweze kuwa na watoto 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 hali hii
watumiaji kadhaa wataweza kurejelea
baba yao - na kwa hivyo baba atakuwa na
watoto wengi:
| id | name | father_id |
|---|---|---|
| 1 | user1 | 3 |
| 2 | user2 | 3 |
| 3 | user3 | 4 |
| 4 | user4 | null |
Kupata mtumiaji pamoja na baba yake inaweza kufanyika kwa njia ifuatayo:
SELECT
users.name as user_name,
fathers.name as father_name
FROM
users
LEFT JOIN users as fathers ON fathers.id=users.father_id
Hebu tuwe na watumiaji. Kila mtumiaji ana baba na mama. Andika muundo wa uhifadhi.
Andika swala, ambalo litamtoa mtumiaji pamoja na baba yake na mama yake.