尝试使所有节点至少有2个传入连接

时间:2014-08-09 01:15:48

标签: neo4j cypher

以下是查询的输出:

match (u)-[]-(g:Group{group_id : 812794}) return g, u

表示确实存在一个至少有两个传入[:MEMBER_OF]个连接的组。

enter image description here

现在,正如标题中所述,我真正想要的是找到至少两个传入[:MEMBER_OF]连接的所有组及其关联用户。我尝试了以下操作,这似乎让我所有的组至少有两个传入的[:MEMBER_OF]连接

match ()-[:MEMBER_OF]->(g:Group) with  g, count(*) as rel 
where rel > 1 return g

但每当我尝试获取关联的用户节点时,它都不会返回任何内容。如:

match (u)-[:MEMBER_OF]->(g:Group) with  g, u, count(*) as rel 
where rel > 1 return g, u

2 个答案:

答案 0 :(得分:3)

MATCH (u:User)-[:MEMBER_OF]->(g:Group)
WITH g, COUNT(u) AS group_size, COLLECT(u) AS users
WHERE group_size > 1
RETURN g, users

答案 1 :(得分:0)

试试这会对你有用

   match (u)-[r:MEMBER_OF]->(g:Group) 
   where count(r) > 1
   return g