Возвращение вложенных узлов со всеми их деталями - neo4j cypher - PullRequest
0 голосов
/ 14 июня 2019

Скажите, что у меня есть следующий оператор возврата.

RETURN p.id as personID, p.name as personName, collect(distinct(C))

Возвращает узел человека со списком всех дочерних узлов, которые он содержит.

Я хотел бы иметь возможность отображать сведения о человеке и список его дочерних узлов.узлы с их деталями, и вложенные в дочерние узлы, любые дочерние узлы дочерних узлов и их детали.

Например,

RETURN p.id as personID, p.name as personName, collect(distinct(c.id as childID, c.name as childName, collect(c1.id as child1ID, c1.name as child1Name, collect(...)) AS children

Глубина дерева неизвестна, поэтому я не могу сказать,запрос идти на определенную глубину.

Желаемый вывод в neo4j будет выглядеть примерно так:

{ 
  "personID": 1, 
  "personName": "Chris", 
  "children": {
                "childID": 2, 
                "childName": "chris-junior",
                "children": {
                              "childID": 4, 
                               ...
                               ... {
                                     ... 
                                    }
                             }
               }, 

               {
                 "childID": 3, 
                 "childName": "chris-junior-2"
                 "children": {...
                               ...
                              }
               }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...