Python'da 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 bir tablo yapabiliriz, bu tablo
kendisiyle ilişkili olacak. Sadece bağlantı alanında
oğlun id'sini değil, babanın id'sini
tutacağı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 şu şekilde mümkündür:
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.