sql >> Database >  >> RDS >> PostgreSQL

Update records die voldoen aan een voorwaarde met oplopend nummer

Dat is een typische use case voor de row_number() window-functie.Ervan uitgaande dat uw hoofdtabel T is, zou deze query moeten werken met postgresql 8.4 of nieuwer:

update T set local_id=s.rn 
from (select id,row_number() over(order by id) as rn from T where local_site_id=2) s
 where T.id=s.id;


  1. Hoe krijg ik de automatisch verhoogde PK uit de Oracle-database?

  2. De stapel samenstellen - Docker-implementatie van MySQL-containers vereenvoudigen

  3. het combineren van maandelijkse futures-gegevens tot tijdreeksen van de eerste maand in MySQL

  4. Maak een ROLLING-som over een bepaalde periode in mysql