2015-10-17 3 views
1

Правильно ли этот cypher-запрос? Я пытаюсь найти кратчайший путь между двумя узлами на основе узлов-ID:Cypher: найдите кратчайший путь между двумя узлами, идентифицированными их идентификаторами

MATCH (martin:RoadNode {id:16814}),(oliver:RoadNode {id:16820}), 
p = shortestPath((martin)-[*..15]-(oliver)) 
RETURN p 

Это выполнить без ошибок, но она возвращает 0 строк, хотя я ожидаю, что это найти путь.

ответ

1

Я нашел его! Для того, чтобы найти кратчайший путь между узлами на основе их идентификаторов, это ничтожество-запрос делает трюк:

MATCH (martin:RoadNode),(oliver:RoadNode), 
p = shortestPath((martin)-[*..15]-(oliver)) 
WHERE id(martin) = 16814 AND id(oliver) = 16820 
RETURN p 
+1

Обратите внимание, что 15 здесь является необязательным, по умолчанию предел глубины для shortestPath составляет 15 –

+0

Какой должна быть запрос incas of weighted graph (Предположим, что свойство отношения используется для вычисления расстояния между двумя узлами)? –

Смежные вопросы