Я пытаюсь создать запрос поиска рецепта, который возвращает рецепты, которые могут быть сделаны с использованием только тех ингредиентов, которые уже есть у пользователя. Например, если у пользователя есть лук, помидоры, молоко, салат, шоколадный сироп и т. Д., То запрос должен содержать рецепты, такие как салат (лук, помидор, салат), шоколадное молоко (молоко, шоколадный сироп) и т. Д.SQL-поиск для всех подмножеств
Прямо сейчас у меня есть таблица, называемая рецептами с идентификаторами столбцов (первичный ключ) и ингредиентами. У меня есть другая таблица с именем user_ingredients с идентификаторами столбцов и ингредиентом.
Как выглядит эффективный SQL-запрос? В терминах теории множеств я знаю, что мне нужны все рецепты, где набор ингредиентов содержится в наборе пользовательских ингредиентов. Я просто не знаю, как перевести это на SQL, так как я немного новичок в SQL.
Кроме того, если вы считаете, что моя структура базы данных не является тем, чем она должна быть, не стесняйтесь рекомендовать что-то лучше!
Что-то вроде http://stackoverflow.com/questions/20007709/how-to- make-a-query-to-display/20007818 # 20007818 или http://stackoverflow.com/questions/20007709/how-to-make-a-query-to-display/20007818#20007818? Если вы ищете SO для вопросов о рецептах, вы, вероятно, найдете много подобных. – Barmar
Пожалуйста, отметьте свой вопрос с помощью конкретной базы данных, которую вы используете: mysql, sql-server, oracle и т. Д. – Barmar
Если вы уже знаете теорию множеств, тогда вы должны понимать SQL, потому что он использует те же понятия http://en.wikipedia.org/вики/Set_operations_ (SQL) – jbaliuka