Ето едно решение на място (но не едноредово)
Разберете максимален идентификатор:
select max(id) as maxid
from shop;
Запомнете тази стойност. Да кажем, че е равно на 1000;
Вмъкнете отново уникални стойности с отместване:
insert into shop (id, tax_id)
select distinct id + 1000, tax_id
from shop;
Изхвърлете старите стойности:
delete from shop
where id <= 1000;
Възстановяване на нормални идентификатори:
update shop
set id = id - 1000;
ПЕЧАЛБА!