Vairāki pēcteči radniecībās saitēs PHP
Iepriekšējā nodarbībā tēvam varēja būt tikai
viens dēls. Tas tika panākts, jo
tēvam bija saite son_id.
Tagad pieņemsim, ka tēvam var būt vairāki dēli.
Šajā gadījumā mēs joprojām varam izveidot
tikai vienu tabulu, kas būs saistīta
pati ar sevi. Tikai saites laukā glabāsim
ne id dēla, bet id tēva. Šajā
gadījumā vairāki lietotāji varēs atsaukties
uz savu tēvu - un tādējādi tēvam būs
vairāki dēli:
| id | name | father_id |
|---|---|---|
| 1 | user1 | 3 |
| 2 | user2 | 3 |
| 3 | user3 | 4 |
| 4 | user4 | null |
Lietotāju kopā ar viņa tēvu var iegūt šādi:
SELECT
users.name as user_name,
fathers.name as father_name
FROM
users
LEFT JOIN users as fathers ON fathers.id=users.father_id
Pieņemsim, ka mums ir lietotāji. Katram lietotājam ir tēvs un māte. Aprakstiet uzglabāšanas struktūru.
Uzrakstiet vaicājumu, kas izgūs lietotāju kopā ar viņa tēvu un māti.