Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z warunkami w zapytaniu do wielu tabel
Forum PHP.pl > Forum > Bazy danych > MySQL
zbyszek23
Witam
Mam następujace tabele, produkty, producenci, klienci, opinie

I dotego takie zapytanie:

  1. SELECT * FROM produkty, producenci, opinie, klienci WHERE opinie.id_klienta=klienci.id_klienta AND produkty.id_produktu=opinie.id_produktu AND produkty.id_produktu=$id_produktu AND produkty.id_producenta=producenci.id_producenta ORDER BY cenak DESC"

Jet taki problem że gdy w tabeli opinie nie ma żadnego wpisu to nie wyswietla tego produktu
odpowiedzialne są za to dwa ponizsze warunki:
opinie.id_klienta=klienci.id_klienta AND produkty.id_produktu=opinie.id_produktu

Jakmam poprawnie skonstrułowac zapytanie żeby produkt był dostępny nawet jak nie ma do niego przypisanych opini z tabeli opinie.
luki100011
Może połącz tabele za pomocą left join questionmark.gif
zbyszek23
To tez nie działa próbowałem, niby wyświetla wszystkie produkty ale jak nie ma wpisu do tabeli opinie to nie pobiera wszystkich danych z tabeli produkty przez ten warunek: produkty.id_produktu = opinie.id_produktu


  1. SELECT * FROM produkty, producenci LEFT JOIN opinie ON produkty.id_produktu = opinie.id_produktu LEFT JOIN klienci ON opinie.id_klienta=klienci.id_klienta WHERE produkty.id_produktu=$id_produktu AND produkty.id_producenta=producenci.id_producenta ORDER BY cenak DESC"
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.