Mam tabelę, która wygląda mniej więcej tak
id_zawodnika waga data
1 1000 2009-03-12
2 700 2009-03-12
3 300 2009-03-12
1 100 2009-05-01
2 2000 2009-05-01
3 800 2009-05-01
Chciałbym, żeby program wyświetlił mi najwyższą wagę, id_zawodnika i datę (pogrupowane według daty):
id_zawodnika waga data
1 1000 2009-03-12
2 2000 2009-05-01
Napisałem poniższy kod, jednak wyświetla on
MAX(zawody_x.waga) as waga_maks z id_zawodnika z całkiem innego wiersza:
id_zawodnika waga data
1 1000 2009-03-12
1 2000 2009-05-01 // tutaj w kolumnie id_zawodnika powinno być 2
Gdzie tkwi błąd?
<?php
$alla = mysql_query(' SELECT zawody_x.data, zawody_x.id_zawodnika, MAX(zawody_x.waga) as waga_maks, zawodnicy_x.imie as imie
FROM `zawody_x`
JOIN `zawodnicy_x`
ON zawody_x.id_zawodnika = zawodnicy_x.id
GROUP BY `data`
');
while($row_alla = mysql_fetch_array($alla)) {
echo '<tr><td class="m11" align=right>'.$row_alla['id_zawodnika'].'</td><td class="m11" align=right>'.$row_alla['data'].'</td><td class="m11" width=100><b>'.$row_alla['waga_maks'].'g</td></tr>';
}
?>