Mehrere Nachkommen in Verwandtschaftsbeziehungen in Python

In der vorherigen Lektion konnte ein Vater nur einen Sohn haben. Dies wurde dadurch erreicht, dass der Vater eine Verknüpfung son_id hatte.

Nehmen wir nun an, dass ein Vater mehrere Söhne haben kann. In diesem Fall können wir nach wie vor nur eine Tabelle verwenden, die sich selbst verknüpft. Nur im Verknüpfungsfeld speichern wir nicht die id des Sohnes, sondern die id des Vaters. Auf diese Weise können mehrere Benutzer auf ihren Vater verweisen - und dadurch wird der Vater mehrere Söhne haben:

users
id name father_id
1 user1 3
2 user2 3
3 user3 4
4 user4 null

Den Benutzer zusammen mit seinem Vater kann man wie folgt abrufen:

sqlSELECT
  users.name as user_name,
  fathers.name as father_name
FROM
  users
LEFT JOIN users as fathers ON fathers.id=users.father_id
Задание 1

Nehmen wir an, wir haben Benutzer. Jeder Benutzer hat einen Vater und eine Mutter. Beschreiben Sie die Speicherstruktur.

Задание 2

Schreiben Sie eine Abfrage, die den Benutzer zusammen mit seinem Vater und seiner Mutter abruft.