Jeg ville genoverveje databasedesignet. Hvis du vil være begrænset til størrelsesordenen 10.000 poster, så er det ikke så slemt, men hvis dette vil stige uden bundet, vil du gerne gøre noget andet. Jeg er ikke sikker på, hvad du laver, men hvis du ønsker en simpel bestilling (forudsat at du ikke laver en masse traversal), så kan du have en prev_id
og next_id
kolonne for at angive søskendeforhold. Her er dog svaret på dine spørgsmål:
update some_table
set some_position = some_position + 1
where some_position > 5000 and some_position < 10000