Я использую запрос cypher для кратчайшего пути.cypher shortestpath query с фильтром
MATCH path = allshortestPaths((a:Place { Name:'Name-1' })-[*]
-(b:Place { Name:'Name-2' }))
WHERE ANY(x IN nodes(path) WHERE x.Status = "true")
RETURN path
Выше запрос фильтрует пути после получения списка кратчайших путей.
Но мое требование заключается в том, что он должен фильтровать пути внутри с условиями ANY(x IN nodes(path) WHERE x.Status = "true")
, то среди фильтрованных путей он должен найти кратчайший путь.
Возможно ли это?
какая версия Neo4j вы используете? – logisima
На Neo4j 3.0 предикаты ALL и NONE оцениваются во время кратчайшего пути. Но ЛЮБОЙ один не оценивается См. Https://neo4j.com/docs/developer-manual/current/#query-shortestpath-planning – logisima
Спасибо Luanne.we используем версию 3.0.3 – raj