我试图在查询中与or
建立命名关系。我认为查询应该类似于:
MATCH (A:person)-[B (:ACTED_IN|:DIRECTED)]->(C:person) RETURN A, B, C
但无论我如何放入parens我都会收到错误。我想一个UNION
可以做到这一点,但我希望有一些方法可以做到与上面类似。 TIA。
编辑:这就是我想要的,但似乎不是的方式。
MATCH (A:person)-[B]->(C:person) WHERE type(B)="ACTED_IN" OR type(B)="DIRECTED" RETURN A,B,C
答案 0 :(得分:5)
我是新用户,因此我无法对问题发表评论。我猜你正试图让那个演出或指导电影的人。它在官方Cypher文档中描述:Match on multiple relationship types。
借助Neo4j上的Demo Movie Data来获取The Matrix电影中的人物,我会用这个:
MATCH (TheMatrix { title: 'The Matrix' })<-[rel:ACTED_IN|:DIRECTED]-(person)
RETURN person.name, rel