Useita jälkeläisiä sukulaissuhteissa PHP:ssä
Edellisessä oppitunnissa isällä voisi olla vain
yksi poika. Tämä saavutettiin sillä,
että isällä oli yhteys son_id.
Olkoon nyt, että isällä voi olla useita poikia.
Tässä tapauksessa voimme edelleen tehdä
vain yhden taulun, joka liittyy
itseensä. Vain linkkikentässä tallennamme
ei id pojan, vaan id isän. Tässä
tapauksessa useat käyttäjät voivat viitata
isäänsä - ja näin isällä on
useita poikia:
| id | name | father_id |
|---|---|---|
| 1 | user1 | 3 |
| 2 | user2 | 3 |
| 3 | user3 | 4 |
| 4 | user4 | null |
Käyttäjän saaminen yhdessä isänsä kanssa on mahdollista seuraavalla tavalla:
SELECT
users.name as user_name,
fathers.name as father_name
FROM
users
LEFT JOIN users as fathers ON fathers.id=users.father_id
Olkoon, että meillä on käyttäjiä. Jokaisella käyttäjällä on isä ja äiti. Kuvaile tallennusrakenne.
Kirjoita kysely, joka hakee käyttäjän yhdessä hänen isänsä ja äitinsä kanssa.