szukam dobrego rozwiązania które pozwoliłoby mi na wyszukiwanie przepisów po podanych składnikach.
Ważne aby pokazywało tylko te przepisy które nie mają innych składników niż te które wprowadziłem w inpucie.
Struktura bazy danych:
(Tabela: kolumna1,...)
przepisy: id, nazwa
przepisy_skladniki: ps_id, ps_przepis, ps_skladnik
Na chwilę obecną zdołałem napisać następujące zapytania:
select DISTINCT r.nazwa, r.id from przepisy r inner join przepisy_skladniki i on i.ps_przepis = r.id where i.ps_skladnik IN (15, 99)
Problem: Pokazuje przepisy które zawierają wymienione składniaki (15 i 99 to id składników o które zapytałem)
select r.nazwa, r.id from przepisy r inner join przepisy_skladniki i on i.ps_przepis = r.id where i.ps_skladnik IN (15, 99) GROUP BY r.nazwa
Problem: Pokazuje ten przepis który ma te składniki ale i inne, a nie ten który ma tylko te wyniki.
Co robię nie tak?
Count(*) > 2?
Też nie działa poprawnie.
Bardzo proszę o pomysł, pomoc lub rozwiązanie za które po stokroć dziękuję już teraz!