我想要使用可以具有匹配属性的差异关系来检索一组在两者之间共享公共节点的节点。我认为查询看起来像这样:
start
n1=node(8)
match
n1-[r1:HAS_VALUE]->value<-[r2:REQUIRES_VALUE]-object
where
all(x in relationship(r1)
where all(y in relationship(r2) where x.name==y.name))
return
object
但是当我运行它时,cypher会返回SyntaxException: unknown function
。有没有办法可以做这种类型的查询?
答案 0 :(得分:1)
我会像这样写这个查询:
start
n1=node(8)
match
n1-[r1]->value<-[r2]-object
where
r1.name = r2.name
return
object
当你有一个可变长度关系时使用ALL函数 - 在这个查询中r1和r2只保持一个关系,而不是它们的集合。
HTH,
安德烈斯