Ich versuche herauszufinden, ob es irgendwie Chiffre in Neo4j verwendet, um den kürzesten Abstand zwischen einer Gruppe von Knoten zu erhalten.So suchen Sie die kürzeste Entfernung zwischen einer Reihe von Knoten mit Cypher
Einige Hinweise zur Berücksichtigung dieser Suche:
- Abstand ist eine Eigenschaft der Beziehungen zwischen Knoten. Abstandswerte sind in Metern
- Alle Knoten haben eine Beziehung zwischen ihnen mit einer bestimmten Entfernung.
- Der Anfangs- und der Endknoten müssen dem gleichen Knoten entsprechen.
Dies ist, welche Art von Eingabe Ich mag:
MATCH (root) -[root_p1:PATH_TO]-> (p1), (root) -[root_p2:PATH_TO]-> (p2), (root) -[root_p3:PATH_TO]-> (p3), (p1) -[p1_root:PATH_TO]-> (root), (p1) -[p1_p2:PATH_TO]-> (p2), (p1) -[p1_p3:PATH_TO]-> (p3), (p2) -[p2_root:PATH_TO]-> (root), (p2) -[p2_p1:PATH_TO]-> (p1), (p2) -[p2_p3:PATH_TO]-> (p3), (p3) -[p3_root:PATH_TO]-> (root), (p3) -[p3_p1:PATH_TO]-> (p1), (p3) -[p3_p2:PATH_TO]-> (p2) WHERE ID(root) = 10 AND ID(p1) = 1 AND ID(p2) = 2 AND ID(p3) = 3 . . .
Und dann sollte das Ergebnis korrekt Folge von Knoten, die den kürzesten Weg möglich beitragen zu bekommen.
Es ist nicht klar, was bei der Ausgabe sein soll. Es wäre besser, wenn Sie ein Beispiel von Eingabedaten und das gewünschte Ergebnis bringen. –