我想在neo4j中获取给定节点的输入/退出度。一种方法是使用以下查询:
MATCH (u: Node{ name: 'Node 1' })-[]->(v) RETURN count(v);
这需要查找u
的关系。
另一种方法是在插入节点时不断更新节点的度数,然后我们可以通过找到节点来获得度数。
我们是否必须自己维护它或 neo4j 管理它,以便我们只需找到节点即可获得学位。 我想通过密码查询或 python 驱动程序来做到这一点。
是的,size()
函数相当于节点上的 javagetDegree()
方法,并且是 O(1( 操作:
返回传入和传出:
MATCH (u: Node{ name: 'Node 1' })
RETURN size((u)-->()) AS degreeOut,
size((u)<--()) as degreeIn
如果您希望按特定关系类型,这也是等效的:
MATCH (u: Node{ name: 'Node 1' })
RETURN size((u)-[:FOLLOWS]->()) AS followingCount