Это не домашняя работа. Я изменил названия таблиц и полей, только для иллюстративных целей. Я признаю, что я совершенно новичок в MySQL. Пожалуйста, учтите это в своем ответе.
Лучший способ проиллюстрировать функцию запроса, который мне нужен, выглядит следующим образом:
У меня есть две таблицы.
Одна таблица имеет отношение от 0,1 до 0..n к другой таблице.
Только для простоты. Предположим, что двумя таблицами были Рецепт и Ингредиент.
Одно из полей в таблице ингредиентов относится к таблице рецептов, но может быть пустым.
Только для примера:
Я хочу знать SQL для чего-то вроде: Сколько рецептов требует "Оливки" в количестве "1" И "Грибы" в количестве "2"
Будучи новичком в языке структурированных запросов, я даже не знаю, что искать в Google для этой информации.
Я на правильном пути со следующим?:
SELECT COUNT(DISTINCT Recipe.ID) AS Answer FROM Recipe, Ingredient
WHERE Ingredient.RecipeID=Recipe.ID AND Ingredient.Name='Olives'
AND Ingredient.Amount=1 AND Ingredient.Name='Mushrooms'
AND Ingredient.Amount=2
Я понимаю, что это совершенно неправильно, потому что Имя не может быть ОБА Оливками и грибами ... но я не знаю, что вместо этого положить, так как мне нужно сосчитать все рецепты с обоими, но только все рецепты с обоими.
Как правильно написать такой запрос для MySQL?