Premetto dicendo che queste operazioni andrebbero fatte da persone più esperte, soprattutto tenendo presente che si tratta di fatture,
anche perchè se non si conosce a fondo la struttura del database e la logica dell'applicativo che si utilizza si rischiano di fare più disastri che il resto.Esempio magari questa tabella è collegata ad una tabella contatori che necessita di altri dati ecc ecc.
Detto questo puoi ottenere quello che vuoi prendendo spunto da questa select.
da qui controlli se il risultato che ti propone la colonna counter è quello desiderato, dopo di che ti basta trasformarla in una UPDATESELECT (@rank:=@rank+1) AS counter,ps_order_invoice.*
FROM ps_order_invoice INNER JOIN
(SELECT @rank :=0) b