Бисёр робит бо як ҷадвал дар Python

Фарз мекунем, ки шаҳрҳои зеринро дорем:

шаҳрҳо
id ном
1 шаҳр1
2 шаҳр2
3 шаҳр3

Фарз мекунем, ки роҳҳо миёни шаҳрҳо мавҷуданд, дар ҳоле ки ҳар як роҳ шаҳри оғоз ва шаҳри анҷом дорад:

роҳҳо
id ном from_city_id to_city_id
1 роҳ1 1 2
2 роҳ2 2 3

Фарз мекунем, ки мо мехоҳем роҳҳоро якҷоя бо шаҳрҳо ба даст орем. Душвории ин ҷо он аст, ки ҳар як роҳ ду шаҳр дорад: оғоз ва анҷом.

Маълум мешавад, ки ҷадвали шаҳрҳоро бояд ду маротиба ҷой кард. Дар ҳар як ҷойгирӣ ҷадвал бояд номаш дигар карда шавад:

sqlSELECT
  from_cities.name as from_city_name,
  to_cities.name as to_city_name
FROM
  routes
LEFT JOIN cities as from_cities
  ON from_cities.id=routes.from_city_id
LEFT JOIN cities as to_cities
  ON to_cities.id=routes.to_city_id
Задание 1

Фарз мекунем, ки мо корбарон дорем. Ҳар як корбар падар ва модар дорад. Тарзи нигоҳдорӣро шарҳ диҳед.