如何解决相互关注者密码脚本-Neo4j
我正在寻找共同的追随者。跟随我(ID)并同时关注我的关注者之一(followerID)的人。关系是[:FOLLOWS {status:accepted}]。
例如, MATCH(user:User)-[:FOLLOWS {状态:'已接受'}]->(:User {ID:$ ID})返回用户
此查询提供了我的关注者。
在给出ID和followerID的情况下,如何找到共同的关注者?
解决方法
尝试以下查询:
MATCH (user:User)-[:FOLLOWS {status: 'accepted'}]->(:User {ID:$ID})
WITH collect(user) as followers
UNWIND followers as follower
MATCH (follower)-[:FOLLOWS {status: 'accepted'}]->(node)
WHERE node in followers
RETURN follower
,
您可以找到这样的三角形。您可以获取自己的关注者之一的关注者,而无需指定followerID。
MATCH (me:User {ID:$ID})<-[:FOLLOWS {status: 'accepted'}]-(mutualFollower:User),(mutualFollower)-[:FOLLOWS {status: 'accepted'}]->(myFollower:User),(myFollower)-[:FOLLOWS {status: 'accepted'}]->(me)
// return the list of your followers,with for each the list of followers that you have in common.
RETURN myFollower.ID AS myFollower,COLLECT(DISTINCT mutualFollower.ID) AS mutualFollowers
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。