在Neo4j数据库中查找高权重共同好友的Cypher查询需求
解决方案:获取R的潜在好友节点H、D、G
针对你构建好友关系体系的需求,要筛选出R的双向互关好友(A、B、C)共同关注的、大概率成为R好友的节点(H、D、G),以下是正确的Cypher查询:
MATCH(u:User{name:"R"})-[:FOLLOWS]->(:User)-[:FOLLOWS]->(unew:User) WITH COUNT(unew) AS totalNew, unew as finalUsers WHERE totalNew>=2 AND unew.name<>"R" RETURN totalNew, finalUsers
查询逻辑说明:
- MATCH子句:定位到用户R,遍历R关注的所有双向互关好友(即A、B、C),再找到这些好友关注的所有节点
unew - WITH子句:统计每个
unew被R的好友关注的次数,同时保留对应的节点信息 - WHERE子句:筛选出被至少2位R的好友关注的节点,并且排除R自己
- RETURN子句:返回每个符合条件的节点,以及被R的好友关注的次数
内容的提问来源于stack exchange,提问作者Rishabh Rawat
相关产品推荐
相关产品推荐

