PHP'de Akrabalık İlişkilerinde Birden Fazla Çocuk
Önceki derste, bir babanın sadece
bir oğlu olabilirdi. Bu, babanın
son_id bağlantısına sahip olması
sayesinde sağlanıyordu.
Şimdi, bir babanın birden fazla oğlu olabilsin.
Bu durumda, yine sadece kendi kendine
bağlanan bir tablo yapabiliriz.
Sadece bağlantı alanında oğlun
id'sini değil, babanın
id'sini saklayacağız. Bu
durumda birden fazla kullanıcı kendi
babasına referans verebilecek - ve böylece babanın
birden fazla oğlu olacak:
| id | name | father_id |
|---|---|---|
| 1 | user1 | 3 |
| 2 | user2 | 3 |
| 3 | user3 | 4 |
| 4 | user4 | null |
Bir kullanıcıyı babasıyla birlikte almak aşağıdaki şekilde yapılabilir:
SELECT
users.name as user_name,
fathers.name as father_name
FROM
users
LEFT JOIN users as fathers ON fathers.id=users.father_id
Elimizde kullanıcılar olduğunu varsayalım. Her kullanıcının bir babası ve bir annesi var. Saklama yapısını açıklayın.
Kullanıcıyı babası ve annesiyle birlikte getiren bir sorgu yazın.