如图所示,
3根节点 - A,B,C - 同样是D,E,F等
6分支节点 - A1,a2,a3,b1,b2,c1
我想得到与根节点相关的分支节点的数量。
所以我用了
MATCH (b:branch)-[:branch_of]-(r:root {Root:'A'}) RETURN count(b)
适用于单根, 但我想要多根 - 所以我用了
MATCH (r:root),(b:branch),(b)-[:branch_of]-(r {Root:'A'},{Root:'B'},{Root:'C'}) RETURN count(b)
但它不起作用 - 如何实施?
答案 0 :(得分:1)
我认为这更接近你想要的。对于每个根(在'roots'参数数组中具有'根'属性值),获取分支数的计数。
顺便说一下,您应该指出查询中关系的方向性。这可以使事情变得更快。
MATCH (b:branch)-[:branch_of]-(r:root)
WHERE r.Root IN {roots}
RETURN r, count(b)
所以,如果你只关心根“A”和“B”,你可以指定一个这样的参数:
{
"roots": ['A', 'B']
}
答案 1 :(得分:0)
自己回答
MATCH (r:root),(b:branch),(b)-[:branch_of]-(r) WHERE r.name="A" OR r.name="B" RETURN count(b)
有效