Deals Of The Week - hours only!Up to 80% off on all courses and bundles.-Close
The very basics
Infinite looping
Processing graphs with recursive CTEs
27. Traveling salesman 2


Excellent. Let's take the next step in the construction of our query.


We've turned your previous query into a CTE. Your task is to complete the outer query based on the template. For London and all roads from London, show the following columns:

  • path – For London, it's simply 'London'; for other cities, it will be the path from London in the following format: London->CityName.
  • lat.
  • lon.
  • total_distance – For now, the distance from London to that city.
  • count_places – For now, it's equal to 2.

We prepared the function lat_lon_distance(lat1,lon1,lat2,lon2) that will calculate the distance between the cities for you.

Stuck? Here's a hint!

In the outer query, first select all information for London from the CTE, then use UNION ALL and construct a path using the concatenation operator ( || ).