Non esiste una sola query che ti butti fuori i risultati come vuoi tu, devi farne 2
Nella prima fai un SELECT DISTINCT dei gol e li metti in un array
Poi ciclando l'array esegui una query che ti tiri fuori marcatore e squadra
Io la farei così
Codice PHP:
<?php
mysql_connect("localhost", "root", "")
or die("Connessione non riuscita: " . mysql_error());
mysql_select_db("test");
$risultato = mysql_query("SELECT DISTINCT goal FROM marcatori ORDER BY goal DESC")
or die("query non riuscita: " . mysql_error());
while($riga = mysql_fetch_assoc($risultato)) {
$gol[]=$riga['goal'];
}
$tot_gol = count($gol);
for ($i=0; $i<$tot_gol ;$i++) {
$risultato2 = mysql_query("SELECT marcatore,squadra FROM marcatori WHERE goal=$gol[$i] ORDER BY marcatore
ASC");
echo 'Goal '.$gol[$i].'
';
while($riga2 = mysql_fetch_assoc($risultato2)) {
echo "$riga2[marcatore] $riga2[squadra]
";
}
echo '
';
}