sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL-record opnieuw ordenen met behulp van Update met een subselectie

Je hoeft niet expliciet lid te worden van SomeTable, hoe cool is dat? :)

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

opmerking:Postgres is niet hoofdlettergevoelig, gebruik kleine letters, zoals row_number , sort_order , id_col , enz.




  1. Naamgeving van primaire sleutels id versus something_id in SQL

  2. Hoe deze fout op te lossen:dbWriteTable()

  3. Wat is precies het verschil tussen primaire index en secundaire index?

  4. Oracle/Sybase SQL - waarde ophalen op basis van een eerder record (geen eenvoudige LAG)