> Not so bad. Try something like this:
> 
> SELECT min(id+1) as id_new FROM table
>     WHERE (id+1) NOT IN (SELECT id FROM table);
> 
> Now, this requires probably a sequential scan, but I'm not sure how
you
> can get around that.
> Maybe if you got trickier and did some ordering and limits. The above
> seems to give the right answer, though.

it does, but it is still faster than generate_series(), which requires
both a seqscan and a materialization of the function.
 
> I don't know how big you want to scale to.

big. :)

merlin

---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Reply via email to