Мне нужна помощь в попытке выполнить запрос в Neo4j, который я не могу понять. Запрос состоит в том, чтобы вернуть все торты, содержащие оба ингредиента: молоко и сливки.
Ниже приведен фрагмент узла торта и ингредиентов (есть еще ингредиенты и торты, но я не публиковал их здесь, поскольку все они отформатированы одинаково):
(brownies:Cake {name: "Brownies"}),
(brownies)-[:CONTAINS {quantity: 50, unit: "grams"}]->(white),
(brownies)-[:CONTAINS {quantity: 250, unit: "grams"}]->(selfraising),
(brownies)-[:CONTAINS {quantity: .5, unit: "grams"}]->(salt),
(brownies)-[:CONTAINS {quantity: 125, unit: "grams"}]->(sugar),
(brownies)-[:CONTAINS {quantity: 250, unit: "grams"}]->(cocoa),
(brownies)-[:CONTAINS {quantity: 125, unit: "grams"}]->(lemonade),
(brownies)-[:CONTAINS {quantity: 125, unit: "grams"}]->(cola),
(brownies)-[:GARNISHED_WITH {how: "chopped on top"}]->(cherry),
(brownies)-[:GARNISHED_WITH {how: "chopped on top"}]->(orange),
(limeJuice:Ingredient {name: "lime juice"}),
(cranberryJuice:Ingredient {name: "cranberry juice"}),
(lemonJuice:Ingredient {name: "lemon juice"}),
(orangeJuice:Ingredient {name: "orange juice"}),
(tomatoJuice:Ingredient {name: "tomato juice"}),
(lemonade:Ingredient {name: "lemonade"}),
(soda:Ingredient {name: "soda water"}),
(spice:Ingredient {name: "spice water"}),
(cola:Ingredient {name: "cola"}),
Neo4j, похоже, не может идентифицировать ингредиенты, но я не совсем уверен, что мой запрос отформатирован правильно, несмотря на это, вот что у меня есть на данный момент:
MATCH(x:Cake)-[:CONTAINS]-> (Ingredient: "milk" or "cream") Return x