Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Rezeptnamen anzeigen, wenn alle Zutaten bereits angegeben sind

Wir müssen alle Rezepte überspringen, die andere Zutaten als Hühnchen und Mayonnaise enthalten, also sollte etwas wie das Folgende funktionieren:

SELECT * from recipe r
INNER JOIN relationship ri on r.id=ri.recipe_id
INNER JOIN ingredients i on i.id=ri.ingredients_id
WHERE i.ingredients_name IN ('chicken','mayonnaise')
and r.id not in (select r.id from recipe r
INNER JOIN relationship ri on r.id=ri.recipe_id
INNER JOIN ingredients i on i.id=ri.ingredients_id
WHERE i.ingredients_name not IN ('chicken','mayonnaise'))