Я предполагаю, что Redshift следует семантике Postgres на update
.Если так:
update public.dctable d
set dc = 1
from (select d.*,
min(time) over (partition by prod, customer, city, num) as mintime,
row_number() over (partition by prod, customer, city, num order by
time) as seqnum
from public.dctable d
) d2
where d2.prod = d.prod and d2.customer = d.customer and d2.city = d.city and
d2.num = d.num and d2.mintime < d.time;
Я не думаю, что row_number()
необходим для того, что вы хотите сделать.