2 つのテーブル間でいくつかの比較を行い、それらの結果の最小値を返すクエリがあります。
問題は、内部結合を使用していて、一致する行がない場合、つまり行が存在しない場合、フィールドが空白になることです。
それを変更する方法があるかどうか疑問に思っているので、行が存在しない場合でも値を返します。
これは私のクエリです:
SELECT MIN(quantity_per_one * 5 < quantity) AS has_enough
FROM costs
INNER JOIN user_ingredients USING (IngredientID)
ユーザーが成分を持っていない場合、行は存在しません。これによりhas_enough
、何も等しくなりません。なるように調整するにはどうすればよいですか0
テーブル構造:
table for costs
//note there can be multiple ingredients per materialID
ID | materialID | IngredientID | quantity_per_one
1 | 5 | 6 | 60
1 | 5 | 3 | 10
table for user's available ingredients
ID | UserID | IngredientID | quantity
1 | 2 | 6 | 100