[英]Search conditions across multiple tables
所以我有下表:
我想做的就是搜索含有某些成分的食譜。
如果我的搜索查詢是“(奶酪和馬鈴薯)或意大利面”,則應返回所有包含意大利面或以奶酪和馬鈴薯為原料的食譜。
我將如何實施這樣的事情?
注意:這不是搜索查詢的實際外觀。 我還沒有決定如何解決這個問題。
我不確定該問題的標題是什么? 我歡迎任何更合適的標題的建議。
您只需要IngredientsRecipes表即可。 它包含所有相關信息。
例如,要找到具有一組成分的一組食譜:
select ir1.recipe_id from
IngredientsRecipes ir1 inner join
IngredientsRecipes ir2 on ir1.recipe_id = ir2.recipe_id
...
IngredientsRecipes irN on ir1.recipe_id = irN.recipe_id
where
ir1.ingredient_id = 5 and
ir2.ingredient_id = 121 and
...
irN.ingredient_id = 80;
如果您想一次進行多個查詢(由於OR),那么我建議您在單獨的查詢之間簡單地使用UNION(因為它們畢竟確實是單獨的查詢)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.