Как прокомментировал jarlh, похоже, что вы пытаетесь присвоить дополнительные столбцы столбцу id
, упорядоченному по foo
, тогда bar
:
select
foo,
bar,
case when id is null then row_number() over(order by foo, bar) else id end id
from mytable
Если вы ищетеобновление:
with cte as (
select
foo,
bar,
id,
row_number() over(order by foo, bar) rn
from mytable
)
update cte set id = rn
where id is null