Repensaría el diseño de la base de datos. Si va a estar limitado al orden de los registros 10K, entonces no está tan mal, pero si esto va a aumentar sin límite, entonces querrá hacer otra cosa. No estoy seguro de lo que está haciendo, pero si desea un orden simple (suponiendo que no esté haciendo muchos recorridos), entonces puede tener un prev_id
y next_id
columna para indicar las relaciones entre hermanos. Sin embargo, aquí está la respuesta a sus preguntas:
update some_table
set some_position = some_position + 1
where some_position > 5000 and some_position < 10000