查找两个节点之间共享的连接节点

问题描述:

Cypher初学者问题。我知道如何让别人叫丽贝卡的各界朋友,以及它们之间的边缘:查找两个节点之间共享的连接节点

MATCH (rebecca:Person)-[r*1..10]->(friends:Friend) 
RETURN rebecca, friends, 
     extract(x IN r | {rel: x, start: startNode(x), end: endNode(x)}) 

,我知道如何让别人叫罗伯特的各界朋友,以及它们之间的边缘:

MATCH (robert:Person)-[r*1..10]->(friends:Friend) 
RETURN robert, friends, 
     extract(x IN r | {rel: x, start: startNode(x), end: endNode(x)}) 

但是,我如何获得罗伯特和丽贝卡彼此共同拥有的所有朋友?要么通过组合这两个查询,要么完全有一个简单的方法。

可以使用

MATCH (rebecca:Person)-[:FRIEND]->(friends:Friend)<-[:FRIEND]-(robert:Person) 
where rebecca.name = "Rebecca" and robert.name= "Robert"  
RETURN friends