![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 406 Pomógł: 73 Dołączył: 15.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
To znowu ja (IMG:style_emoticons/default/smile.gif) W tym temacie Temat: Many to many SELECT uzyskałem satysfakcjonująca mnie odpowiedź i rozwiązałem problem. Niestety przyszedłem do was dzisiaj z podobnym problem, ale raczej w kwestii czysto merytorycznej, a mianowicie: - posiadam sobie taki oto wycinek z bazy danych: (IMG:http://i.imgur.com/FSh9tNR.png) Wynika z tego tyle, że dany product może być przypisany do kategorii i/lub podkategorii. Podam przykład: CODE - kategoria Pizza: ----- produkt ----- produkt - kategoria Napoje: ----- produkt --- podkategoria Drinki: ----- produkt ----- produkt --- podkategoria Alkohole ----- produkt Następnie, po ponownym przejrzeniu tego poradnika: http://nospor.pl/grupowanie-wynikow.html tym razem zastosowałem grupowanie w PHP. Stanąłem na zapytaniu do bazy danych, które wygląda tak:
Cały problem jest w tym, że wynik zwraca tylko kategorie z produktami. "Błąd" znalazłem z klauzuli WHERE - bez niej, wyniki są takie jakie oczekiwałem, czyli zwrot nawet pustych kategorii. Czy ktoś wie dlaczego tak to działa a nie inaczej i gdzie jest błąd w moim rozumowaniu? Z góry dzięki za jakiekolwiek wskazówki. PS. kolumna `visible` odpowiada za widoczność kategorii czy produktu na stronie, więc jest potrzebna w zapytaniu. Ten post edytował Salvation 9.11.2016, 14:34:03 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No skoro ustawiles dla productu
AND p.`visible` = '1' no to skoro produkt nie istnieje to logiczne ze nie ma =1 wiec warunek nie jest spelniony powinno byc AND (p.visible is NULL or p.`visible` = '1' ) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 09:22 |