Neo4j / Cypher узел в центре пути - PullRequest
1 голос
/ 15 июня 2019

У меня есть линейный путь в шифре:

MATCH path = (s)-[:SOMETHING*]->(e)

То, что я хочу, это узел в середине этого пути. Как я могу получить это?

Большое спасибо за ваше время!

1 Ответ

1 голос
/ 15 июня 2019

Вы можете использовать nodes(path), чтобы получить список узлов в пути. Вы можете использовать length(path), чтобы получить его длину, поэтому:

MATCH path = (s)-[:SOMETHING*]->(e)
RETURN nodes(path)[length(path)/2] as middle

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...