找到连接到所有起始节点的节点

时间:2014-11-26 16:14:54

标签: neo4j cypher

我正在尝试为以下场景建模cypher查询:

我有3个起始节点A,B,C,并且我试图找到与所有三个起始节点相关的n个节点D.最后,我将减少关系的weight属性,并选择权重最高的节点。

先谢谢你帮助我!

1 个答案:

答案 0 :(得分:1)

这样的事情怎么样?

match (a {name: "A"})-[r1]-(d)
, (b {name: "B"})-[r2]-(d)
, (c {name: "C"})-[r3]-(d)
return d.name
, r1.weight + r2.weight + r3.weight as Weight
order by Weight desc
limit 1

仅返回与a,b,c匹配的所有内容;加上那些相对关系的权重;按重量递减;然后选择第一个。