微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

考虑到模式和关系,编写查询以获取 Abiodun 的二级朋友的问题

如何解决考虑到模式和关系,编写查询以获取 Abiodun 的二级朋友的问题

作为一个新手,我正在尝试编写一个密码查询,考虑到模式和关系,该查询获取 Abiodun(节点)的二级朋友。

初始代码

1) CREATE (abiodun:Person {name:"Abiodun"})
   RETURN abiodun

2) MATCH (abiodun:Person {name:"Abiodun"})
   CREATE (abiodun)-[like:LIKE]->(neo:Database {name:"Neo4j" }) 
   RETURN abiodun,like,neo

3)MATCH (abiodun:Person {name:"Abiodun"})
  FOREACH (name in ["Rajesh","Anna","Julia","Andrew"] |
  CREATE (abiodun)-[:FRIEND]->(:Person {name:name}))

4)MATCH (neo:Database {name:"Neo4j"})
  MATCH (anna:Person {name:"Anna"})
  CREATE (anna)-[:FRIEND]->(:Person:Expert {name:"Amanda"})-[:WORKED_WITH]->(neo) here

实际问题(到目前为止我做了什么

MATCH (abiodun) WHERE not ((abiodun)-[:FRIEND]->(myFriends)) 
RETURN n

enter image description here

我正在尝试编写一个显示 Amanda 的查询

解决方法

您可以使用从 Abiodun 到 Amanda 的固定长度关系。 关系中“*2”的意思是“给我一个Abiodun的朋友的朋友”。

MATCH (:Person {name: "Abiodun"}) - [:FRIEND*2] -> (p:Person)
RETURN p

可在此处找到详细信息:https://neo4j.com/docs/cypher-manual/current/clauses/match/#varlength-rels

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。