Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Jak złączyć tabele i odróżnić rekordy
Forum PHP.pl > Forum > Przedszkole
szczabik
Witam mam takie tabele w bazie danych

Tabela z nazwami drużyn tabela druzyny

druzyna_id | nazwa

I tabele nadchodzące_mecze

nmecz_id | druzyna1 | druzyna2

I w tabeli mam np. takie rekordy

1 | 1 | 2
2 | 2 | 1
gdzie liczby to id druzyn z tabeli druzyny

I mam taki kod
  1. <?php
  2. $wynik = mysql_query("SELECT u.*, b.* FROM nadchodzoce_mecz u
  3. LEFT JOIN druzyny b ON u.druzyna1=b.druzyna_id ORDER BY u.data_meczu LIMIT 5")
  4. while($r = mysql_fetch_assoc($wynik)) {
  5. echo "<tr>
  6. <td class='tbl' align='center'>".$r['nazwa']."</td>
  7. <td class='tbl' align='center'>VS</td>
  8. <td class='tbl' align='center'>".$r['nazwa']."</td>
  9. </tr>";
  10. }
  11. ?>

gdzie złączyłem tabele

I problemem w tym gdy chce wyświetlić rekordy wyświetla mi 2 razy tą samą drużynę chodzi o ten kod
  1. <?php
  2. <td class='tbl' align='center'>".$r['nazwa']."</td>
  3. <td class='tbl' align='center'>VS</td>
  4. <td class='tbl' align='center'>".$r['nazwa']."</td>
  5. ?>

gdzie dwa razy jest
  1. <?php
  2. ".$r['nazwa']."
  3. ?>


Trzeba złączyć jeszcze raz tabele druzyna2 z druzyna_id i odróżnić od siebie
  1. <?php
  2. ".$r['nazwa']."
  3. ?>

Ale nie wiem jak to zrobić może mi ktoś pomóc ?
erix
  1. SELECT *, (SELECT name FROM teams WHERE id=t1) AS n1, (SELECT name FROM teams WHERE id=t2) AS n2 FROM `matches`


Spróbuj w ten deseń.
szczabik
Zrobiłem to tak
  1. SELECT n.*, (SELECT r.* FROM druzyny WHERE r.druzyna_id = n.druzyna1) AS n1, (SELECT r.* FROM druzyny WHERE r.druzyna_id = n.druzyna2) AS n2 FROM nadchodz&#261;ce_mecze;

i wywala błąd. Wie ktoś czemu ?
phpion
Cytat(szczabik @ 11.11.2008, 14:19:15 ) *
Zrobiłem to tak i wywala błąd. Wie ktoś czemu ?

Bo masz błąd w zapytaniu.

Ja zamiast podzapytań użyłbym złączeń. W tym przypadku musisz dwukrtonie dołączyć tą samą tabelę ale z różnymi warunkami. Niedawno pisałem o tym w innym temacie.
http://forum.php.pl/index.php?s=&showt...st&p=534424
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.