On Tue, 24 Jul 2007, Csaba Nagy wrote:

> > How about using the following?
> >
> > delete from <table>
> >     where ctid in (select ctid from <table> limit <num>);
> >
>
> I actually checked this out before starting this thread, and the plan
> looked like:
>
> > explain delete from my_table where ctid in (select ctid from my_table
> limit 10);

Unfortunately the stuff that makes a ctid=<value> nice doesn't seem to be
used when you're doing an in. It's possible that a function that does
something like
 for rec in select ctid from my_table limit 10 loop
  delete from my_table where ctid=rec.ctid;
 end loop
might do okay, but I haven't tried it.

---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
       subscribe-nomail command to [EMAIL PROTECTED] so that your
       message can get through to the mailing list cleanly

Reply via email to