0

我在 neo4j 中创建了 5 个节点,如下所示。

Node 1 {userid:1000, username: A, someOtherProperties...}
Node 2 {userid:2000, username: B, someOtherProperties...}
Node 3 {userid:3000, username: c, someOtherProperties...} 
Node 4 {userid:4000, username: D, someOtherProperties...} 
Node 5 {userid:5000, username: E, someOtherProperties...} 

节点 1 与节点 2 和 3 连接,节点 2 与节点 1、3、4 连接

1 -> 2
1 -> 3
2 -> 1
2 -> 3
2 -> 4
3 -> 4

现在我想要节点 1 的用户建议,其中包含那些与其自身没有连接且相互计数的节点。我想要这样的结果。

node id  userid  username  mutual count
-------  ------  --------  -------------
4    4000    D         2             (which is node 2 & 3)
5    5000    E         0    

我曾尝试过密码查询,但没有成功。

4

1 回答 1

0

请试试

START user=node:node_auto_index(name='A'), f=node(*) 
MATCH user-[r?:FRIEND*1..2]->(f) 
WITH DISTINCT r AS friendRelation,f 
RETURN count(friendRelation),f

这将为您提供与深度为 2 的每个其他节点的朋友关系数量(朋友的朋友)

于 2013-07-24T10:18:55.543 回答