我对neo4j查询有疑问,这是我的查询:
MATCH (o:Pizza)-[r:CONTAINS]->(p:Ingredient{name:"salami"}) RETURN o
我的查询有效,它会返回带有提供成分的披萨,但如果它包含火腿我将如何添加,我正在尝试这样的事情。
MATCH (o:Pizza)-[r:CONTAINS]->(p:Ingredient{name:"salami"}) and (p:Ingredient{name:"ham"}) RETURN o
答案 0 :(得分:2)
此查询应该有效:
MATCH
使用逗号,您可以MATCH (o:Pizza)-[r:CONTAINS]->(p:Ingredient)
WITH o, collect(p.name) as ingredients
WHERE ALL (ingredient IN ['salami', 'ham', 'another ingredient'] WHERE ingredient IN ingredients)
RETURN o
多个传入/传出关系到同一节点。
或者,如果您有动态的成分列表,则可以使用ALL功能:
{{1}}