2017-02-24 5 views
0

Ich habe eine Anfänger Cypher Frage. Ich habe eine Abfrage wie folgt:Cypher: Rückgabe beider Knoten und Kanten aus einer Abfrage?

MATCH (rebecca:Person {name:"Rebecca"})-[1..2]->(companies:Company) 
RETURN companies 

Dieses innerhalb von zwei Sprüngen von Rebecca all Unternehmen gibt, aber es gibt nur den letzten Firmenknoten. Wie sehe ich auch die Kanten und die Zwischenknoten?

Antwort

2

Sie können nur Entitäten mit Aliasnamen zurückgeben.

MATCH (rebecca:Person {name:"Rebecca"})-[1..2]->(companies:Company) 
RETURN companies 

ein r Alias ​​Ihre Beziehungen hinzufügen:

MATCH (rebecca:Person {name:"Rebecca"})-[r*1..2]->(companies:Company) 
RETURN companies, r 

Für Zwischenknoten zurückkehrt, können Sie es einen Weg machen:

MATCH p=(rebecca:Person {name:"Rebecca"})-[r*1..2]->(companies:Company) 
RETURN companies, relationships(p), nodes(p) 

Sie können auch die Firma zurückkehren zusammen mit einem Karte von (Beziehung, Startknoten, Endknoten):

MATCH (rebecca:Person {name:"Rebecca"})-[r*1..2]->(companies:Company) 
RETURN companies, 
     extract(x IN r | {rel: x, start: startNode(x), end: endNode(x)}) 
+1

Große Antwort, danke! – Richard

Verwandte Themen