Допустим, у меня есть таблица с данными ...
| person_id | priority |
|------------|------------|
| 678 | 2 |
| 413 | 4 |
| 912 | 1 |
| 111 | 5 |
Как мне обновить priority
, чтобы значения были смежными? Т.е. ...
| person_id | priority |
|------------|------------|
| 678 | 2 |
| 413 | 3 | -- updated from 4 to 3
| 912 | 1 |
| 111 | 4 | -- updated from 5 to 4
Я знаю, что могу использовать что-то вроде ...
select
row_number() over (order by [priority]) as position
from
table_name
..., чтобы найти «положение» человека, но как я могу использовать это для обновления той же строки?
Значения priority
всегда должны начинаться с 1.