Ich möchte die Top 10 Werte einer Spalte in der Tabelle aktualisieren. Ich habe drei Spalten; id
, account
und accountrank
. Um den Top-10-Wert erhalten kann ich die folgenden Befehle verwenden:Aktualisieren Sie die oberen N Werte mit PostgreSQL
SELECT * FROM accountrecords
ORDER BY account DESC
LIMIT 10;
Was würde Ich mag zu tun ist, um den Wert in accountrank
setzt eine Reihe von 1 - 10
zu sein, basierend auf der Größe von account
. Ist das in PostgreSQL möglich?
Wenn Ihre Poatgres-Version 8.4 oder höher ist, können Sie die Windowing-Funktionen + rank() oder row_number() verwenden. – wildplasser