2017-01-29 3 views
2

Angenommen, ich habe eine unbekannte Anzahl von Knoten mit der gleichen Bezeichnung generiert. Dann würde ich jeden Knoten wie in Beziehung zu sein, mit all den anderen ...Neo4j - Erzeuge Beziehung zwischen allen Knoten

ich folgende CYPHER versucht:

MATCH (n:Nodelabel),(m:Nodelabel) 
MERGE (n)-[:EXCHANGE {cost: rand()*100}]->(m) 

Es ist fast perfekt, aber ich Looping Beziehungen: jeder Knoten in Beziehung zu sich selbst ist . Wie kann ich das verhindern?

Antwort

2

Verwenden Sie den folgenden CYPHER:

WHERE NOT n=m 

So ist die volle CYPHER Antwort lautet:

MATCH (n:Nodelabel),(m:Nodelabel) 
WHERE NOT n=m 
MERGE (n)-[:EXCHANGE {cost: rand()*100}]->(m) 
+1

Gute Antwort, wenn Sie möchten, können den Ungleichheitsoperator machen: WHERE n <> m ' – InverseFalcon

Verwandte Themen