私はSQLの初心者で、助けが必要です。3 ~ 4 個のテーブルがあり、いくつかの行を返す sqlite コマンドを作成したいと考えています。表は次のとおりです。
表:レストラン
| Name | menuID | REFERENCES [Menu]([menuID])|
表:メニュー
| MenuID | Name |
表:成分
| IngredientID | Name |
表: Food_Incl_ingredient
| FoodIncIngredientID | FoodID REFERENCES [Food][FoodID] | IngredientID REFERENCES [Ingredient]([IngredientID])|
表:食べ物
| FoodID | Name | Type | MenuID REFERENCES [Menu][MenuID]|
レストランの名前、食べ物の名前、食べ物の種類を返すクエリを作成したいのですが、私が言う材料がない場合. ありがとうございました。
テーブルレストラン:
| Name | MenuId |
Goodys 2
Koumbaris 1
テーブルメニュー:
| MenuID | Name |
1 koumbarisMenu
2 goodysMenu
テーブル フード:
| FoodID | Name | Type | MenuID |
29 Chef's Salad Starter 2
31 Mama's Salad Starter 2
30 Ceasar's Salad Starter 2
表 Food_Incl_ingredient:
| FoodInclIngredientID | FoodID | IngredientID |
1 29 1
6 31 1
8 30 1
テーブルの成分:
| IngredientID | Name |
1 Cereals
2 Shellfish
SQL クエリ:
SELECT Restaurant.Name, Food.Name, Food.Type
FROM Restaurant
INNER JOIN Menu ON Restaurant.menuID = Menu.MenuID
INNER JOIN Food ON Menu.MenuID = Food.MenuID
INNER JOIN Food_Incl_ingredient ON Food.FoodID = Food_Incl_ingredient.FoodID
INNER JOIN Ingredient ON Food_Incl_ingredient.FoodInclIngredientID = Ingredient.IngredientID
WHERE Ingredient.Name == 'Cereals'
予想された結果:
| Name | Name | Type |
Goodys Chef's Salad Starter
Goodys Mama's Salad Starter
Goodys Ceasar's Salad Starter
私が得る唯一の結果は最初の行です。