2017-05-29 75 views

回答

1

你可以用update做到这一点,假设id是每行独特:

update players 
    set place = p.new_place 
    from (select p.*, row_number() over (order by score) as new_place 
      from players p 
     ) p 
    where players.id = p.id; 
1
UPDATE players 
    SET place=ordered_place 
FROM (SELECT id, 'place' AS ordered_place 
     FROM players 
     ORDER BY score 
    ) AS t1 
WHERE players.id=t1.id;