Több leszármazott a rokoni kapcsolatokban PHP-ben
Az előző leckében az apának csak
egy fia lehetett. Ezt azért értük el,
hogy az apának volt egy son_id kapcsolata.
Tegyük fel, hogy most az apának több fia is lehet.
Ebben az esetben továbbra is készíthetünk
csak egy táblát, amely önmagára lesz hivatkozva.
Csak a kapcsolati mezőben nem a fiú id-ját
tároljuk, hanem az apa id-ját. Ebben
az esetben több felhasználó is hivatkozhat
a saját apjukra - és ezáltal az apának több fia lesz:
| id | name | father_id |
|---|---|---|
| 1 | user1 | 3 |
| 2 | user2 | 3 |
| 3 | user3 | 4 |
| 4 | user4 | null |
A felhasználó az apjával együtt a következő módon kérhető le:
SELECT
users.name as user_name,
fathers.name as father_name
FROM
users
LEFT JOIN users as fathers ON fathers.id=users.father_id
Tegyük fel, hogy vannak felhasználóink. Minden felhasználónak van apja és anyja. Írja le a tárolási szerkezetet.
Írjon egy lekérdezést, amely lekéri a felhasználót az apjával és anyjával együtt.