Neo4j 在Cypher中查找连接的节点组

Neo4j 在Cypher中查找连接的节点组,neo4j,cypher,Neo4j,Cypher,我有标签为A的节点。其中一些与关系TEST相连(见图A) 我想匹配连接的节点组,为每个组创建一个新节点B,并创建组中每个成员到新节点B的关系(参见图B)。我知道小组很小,从来没有超过3个步骤的TEST关系 如何匹配节点并返回连接的组?APOC中是否实现了图形算法 我找到了答案,也许对某些人还是有帮助的: graph算法包()中有几种用于社区检测的算法。在这种情况下,我们寻找连接的组件: 该算法可以找到连接的组件,并在节点上存储组件的ID: CALL algo.unionFind('A', 'T

我有标签为
A
的节点。其中一些与关系
TEST
相连(见图A)

我想
匹配连接的节点组,为每个组创建一个新节点
B
,并创建组中每个成员到新节点
B
的关系(参见图B)。我知道小组很小,从来没有超过3个步骤的
TEST
关系

如何匹配
节点并返回连接的组?APOC中是否实现了图形算法



我找到了答案,也许对某些人还是有帮助的:

graph算法包()中有几种用于社区检测的算法。在这种情况下,我们寻找连接的组件:

该算法可以找到连接的组件,并在节点上存储组件的ID:

CALL algo.unionFind('A', 'TEST', {write:true, partitionProperty:"partition"})
YIELD nodes, setCount, loadMillis, computeMillis, writeMillis;
使用此新属性,可以轻松地
匹配属于特定组的所有节点:

MATCH (a:A)
WITH a.partition AS p, a
RETURN p, count(a)