Chcę zrobić ranking napisanych postów na jakimś forum (pobrać, które miejsce w ma dany nick w tabeli)
Mam np. tabelę userów:
-id
-nick
-posty

Takim zapytaniem wczytuję wszystkich userów posortowanych wg napisanych postów i szukam pozycji, w której jest jakiś nick:

$sql = "SELECT nick FROM users ORDER BY posty DESC";

$result = mysql_query($sql) or die(mysql_error());

$szukajnick="szukany_nick";
$q=0;
    while ($record = mysql_fetch_array($result,MYSQL_ASSOC)) {
        if($record["nick"]==$szukajnick) {
        echo "Masz ".($q+1)." miejsce w rankingu napisanych postow";
        break;
        }
    $q++;
    }

Moje pytanie:
Czy da sie to jakoś przerobić, żeby nie obciążało za bardzo bazy odczytywaniem wszystkich userów ?