Autor | Zpráva | ||
---|---|---|---|
maxx Profil * |
#1 · Zasláno: 16. 1. 2009, 17:39:13
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 * |
#2 · Zasláno: 16. 1. 2009, 17:41:47
Tam žádné group by nepotřebujete. Jen si dejte
order by t.id, zap_datum Ať máte turnaje u sebe. |
||
maxx Profil * |
#3 · Zasláno: 16. 1. 2009, 17:44:38
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 |
#4 · Zasláno: 16. 1. 2009, 17:54:03
maxx
To si osetri v aplikacni logice, pokud je nazev (nebo id) turnaje stejne jako predchozi, preskoc vypisovani turnaje. |
||
maxx Profil * |
#5 · Zasláno: 16. 1. 2009, 18:03:43
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 |
#6 · Zasláno: 16. 1. 2009, 18:15:04 · Upravil/a: tiso
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: ... } |
||
Časová prodleva: 15 let
|
0