Mise à jour des N premières valeurs à l'aide de PostgreSQL

Je veux mettre à jour le top 10 des valeurs d'une colonne dans le tableau. J'ai trois colonnes; id, account et accountrank. Pour obtenir le top 10 des valeurs que je peut utiliser les éléments suivants:

SELECT  * FROM accountrecords    
ORDER BY account DESC
LIMIT 10;

Ce que je voudrais faire est de définir la valeur dans accountrank à une série de 1 - 10, basées sur l'ampleur de account. Est-ce possible de le faire dans PostgreSQL?

  • Si votre poatgres version 8.4 ou plus, vous pouvez utiliser les fonctions de fenêtrage + rang() ou la fonction row_number().
InformationsquelleAutor djq | 2012-11-02