2017-08-29 1 views
1

Ich versuche, Korrelationssuche in Neo4j zu tun. Ich habe ein vereinfachtes Beispielgraph erstellt (s. Bild). Die Frage könnte sein:Neo4j CYPHER Abfrage für mehrere Pfad Korrelationssuche

Gibt es irgendeine Korrelation zwischen der Stadt, in der ein Benutzer lebt, dem Autotyp, der Fabrik, in der er produziert wurde, und der Art des Problems? Gibt es also eine Kombination, die öfter erscheint als alle anderen? Z.B. Benutzer aus München mit einem BMW, der in Factory XY produziert wurde, haben wahrscheinlich Qualitätsprobleme.

In CYPHER ich den folgenden Code schreiben konnte:

MATCH (c:City)<--(u:User)-->(car:Car)-->(f:Factory) 
RETURN c.name, u.name, car.brand, f.name, count(*) 
ORDER BY count(*) DESC 

Aber wenn mein Weg in beiden Richtungen von dem Car-Knoten und umfasst die Ausgabe Typen gehen shold, wie kann ich den Code schreiben?

Graph

Antwort

1

Suchen Sie wie ein Muster wie folgt aufgeteilt:

MATCH (c:City)<--(u:User)-->(car:Car), 
     (car)-->(f:Factory), 
     (car)-->(it:IssueType) 
RETURN c.name, u.name, car.brand, f.name, it.name, count(*) 
ORDER BY count(*) DESC 

Prost