Nicht sicher, ob der Titel alles erklärt, aber ich Cypher lernen mit Neo4j und der Movie Database (von hier: https://neo4j.com/developer/example-data/) und ich versuche eine Abfrage zu erstellen, die mir jeden Film, dessen Regisseur gibt hat auch darin gehandelt.Findet Knoten mit 2 Beziehungen
Um ein Beispiel für einen solchen Film zu geben, spielte Pulp Fiction - Quentin Tarantino sowohl in und leitete den Film.
Ich kam mit dieser Abfrage für das obige Beispiel oben:
match (m:Movie)-[:ACTS_IN]-(d:Director)-[:DIRECTED]->(n:Movie)
where d.name STARTS WITH 'Q'
return *
Aber es scheint nicht so, wie ich es erwartet zu arbeiten. Ich bekomme alle Filme, in denen er Regie geführt und gespielt hat, während ich nur diejenigen möchte, bei denen er beides gemacht hat.
Sie können auch überprüfen, ob der Regisseur im Film als Teil des Prädikats fungiert hat. Anstelle des zweiten MATCH können Sie die WHERE-Klausel mit dem Muster fortsetzen, das Sie verwenden möchten: 'AND (d) - [: ACTS_IN] -> (m)' – InverseFalcon