Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Filtrowanie produktów po kategoriach
Forum PHP.pl > Forum > Bazy danych > MySQL
Moli
Mam w bazie 3 tabelki:
produkty
  1. id | nazwa

kategorie
  1. id | nazwa

produkty_kategorie
  1. produkt_id | kategoria_id

Pobieram prostym selectem wszystkie wpisy jaki są w tabeli produkty, chciałbym dodać opcję filtrowania wpisów po kategoriach (użytkownik zaznacza checkboxy i powstaje tablica z idami kategorii z których ma wyświetlić wpisy). W tabeli produkty_kategorie przypisuję produkty do poszczególnych kategorii. Chciałbym teraz jednym zapytaniem (uwaga: nie mogę zmienić kolejności pobierania, główny select musi być z tabeli produkty) wyświetlić tylko te produkty, które są w kategoriach które wybrał użytkownik.
Mam jakąś blokadę i nie mogę wymyślić jak to dobrze rozwiązać, potrzebuję podpowiedzi a nie kodu smile.gif
nospor
  1. SELECT p.* FROM produkty p
  2. LEFT JOIN produkty_kategorie pk ON pk.produkt_id=p.id
  3. WHERE pk.kategoria_id IN (1,4,6)

Gdzie 1,4,6.... to id kategorii ktorych szukasz
Moli
@nospor - Kurde proste, nie pomyślałem o tym smile.gif Jednak najprostsze rozwiązania są najlepsze smile.gif Dzięki smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.