Таблицы geo_objects(id, parent_id) geo_object_attributes(id, name) запрос, который рекурсивно находит все гео-объекты по дереву и выводит наименование всех гео-объектов дерева в одну строку postgresql
WITH RECURSIVE t(id, name, parent_id) AS ( SELECT id, name, parent_id FROM geo_objects WHERE parent_id IS NULL UNION SELECT t1.id, t1.name, t1.parent_id FROM t JOIN geo_objects t1 ON t.id = t1.parent_id) SELECT DISTINCT name FROM t;