2014-06-28 41 views
2

我有帐户和交易节点以及它们之间的received_from关系。考虑到帐户A从B收到1笔交易并且C从B收到10笔交易的情况,我想用B到C的10行来显示这一点,但是使用更粗的箭头和计数标签。如何在Neo4j中汇总关系计数

我该如何编写这样的查询,以便获取节点之间的每种关系类型的计数而不是所有关系的列表?

回答

3

我假设每个帐户节点都有一个使用CREATE INDEX ON :Account(acct_id)索引的acct_id属性。

你可以使用一个暗号查询聚合关系计数:

OPTIONAL MATCH (start:Account {acct_id:'C'})-[r:RECEIVED_FROM]->(end:Account {acct_id:'B'}) 
RETURN start.acct_id, end.acct_id, type(r) as type, count(r) as thickness 

注:如果在startend之间没有关系,则不需要结果行时,可以省略OPTIONAL。对于OPTIONAL,非相关节点的厚度为0.