Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL]Zapytanie do bazy
Forum PHP.pl > Forum > Przedszkole
Poczatkujacy_Web
Zerknijcie na to zapytanie, powinno mi wyswietlac tylko te firmy ktorych nazwa kategori = podanej czyli w tym wypadku 'Architektura' a wyswietla wszystkie firmy ktore sa w bazie dlaczego?

  1. SELECT firmy.nazwa, firmy.ulica, firmy.kod, firmy.miasto, firmy.panstwo, firmy.opis,
  2. firmy.www, firmy.email, firmy.logo
  3. FROM firmy, kategorie
  4. INNER JOIN powiazanie ON powiazanie.id_kategori=kategorie.id_kategori
  5. WHERE kategorie.nazwa= 'Architektura'
nospor
Dlatego:
FROM firmy, kategorie
pobierasz dane z dwóch tabel w żaden sposób ich nie łącząc ze sobą, więc ci leci iloczyn kartezjański
Poczatkujacy_Web
w jaki sposob to roziwazac? kiedy tabele wygladaja tak:

firmy
id_firmy
nazwa
itd

kategorie:
id_kategori
nazwa

powiazanie
id_powiazania
id_firmy
id_kategori
nospor
  1. SELECT f.*
  2. FROM powiazanie p
  3. LEFT JOIN kategorie k ON p.id_kategori=k.id_kategori
  4. LEFT JOIN firmy f ON p.id_firmy=f.id_firmy
  5. WHERE k.nazwa= 'Architektura'
Poczatkujacy_Web
Dziekuje bardzo
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.