Ich habe eine Cypher Abfrage, die einen TagSynonym
Knoten zwischen zwei Tag
Knoten zurückgibt:Neo4j Cypher rekursive Abfrage
MATCH (t:Tag)<-[:FOR]-(ts:TagSynonym)-[:HAS]->(s:Tag)
WHERE t.id = {tagId} AND s.id = {synonymId}
RETURN ts
Zusätzlich kann der s:Tag
Knoten selbst kann seine eigene TagSynonym
Knoten wie haben:
(s)<-[:FOR]-(ts:TagSynonym)-[:HAS]->(ss:Tag)
und ss
kann seine eigene TagSynonym
und so weiter und so weiter haben.
Die Tiefe dieser Struktur kann ziemlich groß sein.
Bitte helfen Sie mir, diese Abfrage zu erweitern, um alle TagSynonym
gegründet auf t:Tag
und alle von ihr Synonym Nachfolger zurückzukehren (Tags für s:Tag
und tiefer bis zum Ende dieser rekursive Struktur.)
Dank konnte erreichen etwas ähnliches ohne die APOC-Bibliothek betrachten. Ich entschuldige mich, aber ist es möglich, ohne apoc zu implementieren? Ich habe versucht, vorher apoc zu installieren, aber scheiterte (vor allem für meine Tests basierend auf dem eingebetteten Neo4j) und verwende eine reine Cypher-Abfrage bei meiner Anwendung. – alexanoid
Ich habe eine Nicht-APOC-Abfrage hinzugefügt, die für Sie funktionieren könnte. Ich bin mir nicht sicher, wie es sich mit Ihren Daten verhalten wird. Achte auch auf das nackte '*' in der Pfad-Erweiterung. Es könnte schnell außer Kontrolle geraten, je nachdem, wie komplex Ihre "Tag" - und "TagSynonym" -Knoten sind. –
Danke, es funktioniert! – alexanoid