PHP-те бірнеше ұрпақтың туыстық байланыстары

Алдыңғы сабақта әкеде тек бір ғана ұл болуы мүмкін еді. Бұл әкеде son_id байланысы болуы арқылы жүзеге асырылды.

Енді әкеде бірнеше ұл болуы мүмкін делік. Бұл жағдайда біз әлі де тек бір кесте жасай аламыз, ол өзімен-өзі байланысады. Тек байланыс өрісінде ұлдың id енді сақтамаймыз, ал id әкесін сақтаймыз. Бұл жағдайда бірнеше пайдаланушы өз әкесіне сілтеме жасай алады - және осылайша әкеде бірнеше ұл болады:

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

Пайдаланушыны оның әкесімен бірге алу келесі әдіспен мүмкін:

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

Бізде пайдаланушылар бар делік. Әрбір пайдаланушының әкесі және анасы бар. Сақтау құрылымын сипаттаңыз.

Задание 2

Пайдаланушыны оның әкесі мен анасымен бірге алуға арналған сұраныс жазыңыз.