Autor Zpráva
maxx
Profil *
Zdravim, nějak jsem se zamotal, nebo resp. nedaří se mi správně upravit následující dotaz, abych vždy vypsal:
Turnaj č.1 (název turnaje):
Zápas 1
Zápas 2

Turnaj č.2 (název turnaje):
Zápas 1
Zápas 2

SELECT d.tym_nazev domaci, h.tym_nazev hoste, t.nazev turnaj, turnaje_zapasy.*
FROM turnaje_zapasy
LEFT JOIN turnaje_tymy d ON turnaje_zapasy.zap_domaci = d.tym_id
LEFT JOIN turnaje_tymy h ON turnaje_zapasy.zap_hoste = h.tym_id 
LEFT JOIN turnaje t ON turnaje_zapasy.zap_turnaj = t.id 
ORDER BY zap_datum ASC


Nedaří se mi tam správně zakomponovat formulku GROUP BY. Budu moc vděčnej za pomoc. Dík
Kajman_
Profil *
Tam žádné group by nepotřebujete. Jen si dejte

order by t.id, zap_datum


Ať máte turnaje u sebe.
maxx
Profil *
A nejde to upravit do GROUP BY, abych vypsal vždy jen název turnaje a k němu příslušné zápasy? Takhle musím u každého zápasu vypsat název turnaje.
bohyn
Profil
maxx
To si osetri v aplikacni logice, pokud je nazev (nebo id) turnaje stejne jako predchozi, preskoc vypisovani turnaje.
maxx
Profil *
Aplikační logika? Co si pod tim mam představit? Mě u toho mýho příkladu napadá jak to vyřešit, ale bylo by to přes 2 dotazy.
tiso
Profil
maxx - principálne takto:
...
$turnaj='';
$counter=1;
while($row=mysql_fetch_assoc($result)){
  if($turnaj != $row['turnaj']){//vypis turnaj
    echo 'Turnaj č.'$counter.' ('.$row['turnaj'].')';
    $turnaj=row['turnaj'];
    $counter++;
  }
  //vypis zapas:
  ...
}

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0