Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z zapytaniem do 2 tabel
Forum PHP.pl > Forum > Bazy danych > MySQL
stal-sw
Witam.
Mam 2 tabele:

"tkluby"
- id
- druzyna

i "tmecze"
-id, kolejka, gospodarz, gosc

I w tabeli tmecze - zapisuje id godpodarza i id goscia - sa one powiazane relacje z tabela "tkluby".

I teraz chce jednym zapytaniem pobrac wszytko z tabeli "tmecze" i zarazem pobrac nazwe "goscia" i "gospodarza".
I z tym mam problem.
Bo jak zorbilem zapytanie:
  1. <?php
  2. SELECT *, b.druzyna as pierwsza_druzyna, c.druzyna as druga_druzyna FROM tmecze a
  3. LEFT JOIN tkluby b ON (a.gospodarz = b.id) 
  4. LEFT JOIN tkluby c ON (a.gosc=c.id) 
  5. ORDER BY a.kolejka
  6. ?>


To zapytanie jednak pobiera mi 2 razy nazwe gospodarza - tworzy mi tablice gdzie [nazwa] oraz [pierwsza_druzyna} maja taka sama wartosc.
CZy da sie zrobic jakies bardziej optymalne zapytanie ?

PS. Do obslugi bazy danych uzywam klasy EZ_SQL.

Z gory dzieki za pomoc
nospor
  1. SELECT a.*, b.druzyna AS pierwsza_druzyna, c.druzyna AS druga_druzyna FROM tmecze a,
  2. tkluby b,tkluby c WHERE a.gospodarz = b.id AND a.gosc=c.id
  3. ORDER BY a.kolejka

jesli to ci zwroci takie samo wyniki co Twoje, to znaczy ze gosc ma te samą wartosc co gospodarz lub też w tabeli kluby masz takie same wpisy
stal-sw
Witam.
Dalej to samo - w tabeli napewno nie mam 2 druzyn o takie samej nazwie.
To jest wina zapytania bo prosze zerknac na gernerowana przez zapytanie tablice:

  1. [0] => Array (
  2. [id] => 18 [sezon] => 0 [kolejka] => [gospodarz] => 1 [przeciwnik] => 18 [gol1] => [gol2] => [data] => [druzyna] => Górnik ??czna [liga] => 0 [gosp] => Stal Stalowa Wola [gosc] => Górnik ??czna )


Z gory dziekuje za pomoc.
nospor
ty mi chyba nie pokazales wlasciwych wynikow. w zapytaniu co podalem bylo np. pierwsza druzyna. w wynikach co podales tego nie ma.

Zapytanie testowalem i dziala
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-2019 Invision Power Services, Inc.