PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Riordinamento dei record PostgreSQL utilizzando l'aggiornamento con una selezione secondaria

Non è necessario unirti esplicitamente a SomeTable, quanto è bello? :)

UPDATE SomeTable
SET rankcol = SubQuery.Sort_Order
FROM
    (
    SELECT IDCol, Row_Number() OVER (ORDER BY ValueCOL) as SORT_ORDER
    FROM SomeTable
    ) SubQuery
where SubQuery.IDCol = SomeTable.IDCol

osservazione:Postgres non fa distinzione tra maiuscole e minuscole, meglio usare minuscole, come row_number , sort_order , id_col , ecc.