Re: How to do faster DML
Marcos Pegoraro <marcos@f10.com.br>
From: Marcos Pegoraro <marcos@f10.com.br>
To: Greg Sabino Mullane <htamfids@gmail.com>
Cc: Lok P <loknath.73@gmail.com>, pgsql-general <pgsql-general@lists.postgresql.org>
Date: 2024-02-04T12:59:11Z
Lists: pgsql-general
>
> insert into mytable2 select * from mytable1 order by ctid limit 10_000_000
> offset 20_000_000;
>
You can use min/max values grouping them by 10_000_000 records, so you
don´t need that offset, then generate commands and run them.
select format('insert into mytable2 select * from mytable1 where i between
%s and %s;', max(i), min(i)) from t group by i/10_000_000;