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

Фойдаланувчини унинг отаси ва онаси билан бирга олувчи сўровни ёзинг.