Łącze 2 tabele:
1. zawiera główne dane itp i ma ID
2. zawiera powiązania pierwszej tabeli z trzecią tabelą: pola : ID, opcja_ID
Trzecia tabela zawiera nazwy opcji, ale do wyszukiwania potrzebuje znajdować takie które mają te opcje zapisane i nie potrzebuje ich nazw wtedy wyświetlać.
I problem polega na tym że potrzebuje wyszukiwać rekordy z tabeli 1 spełniające pewne tam kryteria, a dodatkowo spełniające opcje z powiązanej tabeli
mam zapytanko :
SELECT mmdm.ID FROM mmdm.pierwsza AS mmdm INNER JOIN druga AS wt ON mmdm.ID = wt.opcja_ID WHERE wt.opcja_ID = '50' OR wt.opcja_ID = '35' OR wt.opcja_ID = '34' GROUP BY mmdm.ID HAVING count( * ) =3
to przykładowe zapytanie wyciąga wiersze z 1 tabeli które mają co najmniej zaznaczone opcje 50,34 i 35.
Wiem że to zapytanie jest pokręcone ale do takiego doszłem.
zapytanko działa, tylko dla 30000 rekordów w 1 tabeli i z miliona w drugiej to wykonuje sie 4 sekundy, a to trooche za dużo.
Jakby ktoś miał jakiś pomysł jak to wyszukiwanie przyśpieszyć to byłbym bardzo wdzięczny

z góry thx