перебор подпутей против элементов пути - PullRequest
0 голосов
/ 19 октября 2018

Вопрос относится к любому пути neo4j , но для ясности давайте заимствуем данные автобусного маршрута из ответа 2 на этот пост

Neo4J |Cypher Aggregation в списке отношений

Мы можем выполнить этот запрос

MATCH p=(o:BusStop)-[*]->(d:BusStop) RETURN p

и получить несколько узлов и отношений, как и следовало ожидать.

p [{"id": 1}, {"cost": 10, "day": "Sat"} ... и т. Д.

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

Но что если я захочу перебрать полные (начальный узел) - [*] - (конечный узел) подпути?

В браузере отдельные подпути разделеныгоризонтальными линиями.Как получить эквивалент этих разделителей в py2neo?

Спасибо.

1 Ответ

0 голосов
/ 19 октября 2018

Результаты Neo4j - это поток записей.Для данного запроса каждая запись в потоке будет отдельным путем, поэтому вы должны использовать методы курсора возвращаемых результатов для итерации по каждому пути.

Если вы хотите одинрезультат, который был набором путей, вы могли бы возвратить это вместо:

RETURN collect(p) as results
...