2008/06/11

智慧型排名

我想要依 score 排名,同分數的同名次,得到下表的結果,該怎麼做呢?
Namescorerank
Sam811
Tracy782
Jessice782
Albert754


$query="SELECT *FROM ScoreTable ORDER BY score DESC";
$result=mysql_query($query);
$i=1;
while ($row=mysql_fetch_array($result)) {
if ($row[score]==$LastScore) {
$row[rank]=$LastRank;
}
else {
$row[rank]=$LastRank=$i;
$LastScore=$row[score];
}

echo "<tr><td>$row[Name]</td><td>$row[score]</td><td>$row[rank]</td></tr>";
$i++;
}

沒有留言: