Múltiplos descendentes em relações de parentesco em PHP

Na lição anterior, um pai podia ter apenas um filho. Isso era alcançado pelo fato de que o pai tinha uma ligação son_id.

Suponha agora que um pai possa ter vários filhos. Neste caso, ainda podemos criar apenas uma tabela, que estará ligada a si mesma. Só que no campo de ligação armazenaremos não o id do filho, mas o id do pai. Desta forma, vários usuários poderão referenciar seu pai - e assim o pai terá vários filhos:

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

Obter um usuário junto com seu pai pode ser feito da seguinte forma:

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

Suponha que temos usuários. Cada usuário tem um pai e uma mãe. Descreva a estrutura de armazenamento.

Задание 2

Escreva uma consulta que irá buscar o usuário junto com seu pai e sua mãe.