Neo4j - 按多种关系类型匹配

标签 neo4j cypher

我想通过多种关系类型在实体之间进行匹配。

是否可以说以下查询:

match (Yoav:Person{name:"Yoav"})-[:liked & watched & ... ]->(movie:Movie) return movie

我需要所有关系类型之间的“和”; Yova 喜欢并观看了......一部电影。

最佳答案

是的,您可以执行以下操作:

match (gal:Person{name:"Yoav"})-[:liked|:watched|:other]->(movie:Movie) 
return movie

查看文档:Match on multiple relationship types

编辑:

来自评论:

I need "and" between the relation types.. you gave me an "or"



在这种情况下,您可以执行以下操作:
match (Yoav:Person{name:"Yoav"})-[:liked]->(movie:Movie),
(Yoav)-[:watched]->(movie),
(Yoav)-[:other]->(movie)
return movie

关于Neo4j - 按多种关系类型匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46132345/

相关文章:

java - 在事务之外使用 ExecutionEngine#execute(String)?

python - py2neo.Graph的连接池生命周期 : would the connections be released when the instance is no longer referenced by programmer?

elasticsearch - 通过代理安装插件

Neo4j 查询在关系类型上使用逻辑 AND 而不是 OR

Neo4J - 在现有节点上创建关系

graph - Neo4j 空间服务器插件在 withinDistance 和最近的 java.lang.NoClassDefFoundError 上失败

java - 如何在 neo4j 中不保留逻辑日志?

neo4j - 为什么 Neo4j 中隐藏方面不好?

neo4j - 如何通过在 Neo4j 中对另一个属性进行分组来获取属性的最大值

neo4j 匹配具有 0 个或多个以第二个关系结尾的关系的路径