Neo4j Cypher:每个节点的关系数
查找每个用户/节点的边数/关系数的密码是什么? 我想返回每个用户的计数 一般的答案是Neo4j Cypher:每个节点的关系数,neo4j,cypher,Neo4j,Cypher,查找每个用户/节点的边数/关系数的密码是什么? 我想返回每个用户的计数 一般的答案是 MATCH (n)-[r]-() RETURN n, COUNT(r) 但是,对于这种模式,您可能需要制定一些规范。如果您有用户以外的其他节点,则可能希望通过提供用户并查询标签来限制对用户的查询。您可能还希望只计算特定类型的关系或特定方向,因此也可以添加模式的这些部分 如果您的用户是普通人,并且您希望查询每个用户在电话中呼叫其他用户的次数,则查询可能如下所示 MATCH (n:Users)-[r:CALLED
MATCH (n)-[r]-()
RETURN n, COUNT(r)
但是,对于这种模式,您可能需要制定一些规范。如果您有用户以外的其他节点,则可能希望通过提供用户并查询标签来限制对用户的查询。您可能还希望只计算特定类型的关系或特定方向,因此也可以添加模式的这些部分
如果您的用户是普通人,并且您希望查询每个用户在电话中呼叫其他用户的次数,则查询可能如下所示
MATCH (n:Users)-[r:CALLED]->(:User)
RETURN n.name as user , COUNT(r) as phone_calls_made
如果[:CALLED]关系仅在用户之间获得,则可以在第一行中删除第二个:User标签。匹配用户和所有关系并返回计数:
最快的方法是在内部使用node.getDegree
您还可以按方向和关系类型分隔rel模式
MATCH (n:User)
RETURN n, size((n)--()) as degree
MATCH (n:User)
RETURN n, size((n)--()) as degree