Insert result of a parallellized select query into a table, in Postgresql
I think the only even worth trying is to use PostgreSQL FDW which may or may not work. Your use case would also have to be super-niche for that to pay off, like a complex GIS aggregation query.

You can see this restriction is still very much noted in the code,


  The most significant restriction imposed by parallel mode is that all operations must be strictly read-only; we allow no writes to the database and no DDL.  We might try to relax these restrictions in the future.


And, again here

 * Don't allow writes in parallel mode.  Supporting UPDATE and DELETE
 * would require (a) storing the combocid hash in shared memory, rather
 * than synchronizing it just once at the start of parallelism, and (b) an
 * alternative to heap_update()'s reliance on xmax for mutual exclusion.
 * INSERT may have no such troubles, but we forbid it to simplify the
 * checks.


I think it's being stopped by a call to ExecCheckXactReadOnly here in ExecCheckXactReadOnly

if (plannedstmt-&gt;commandType != CMD_SELECT || plannedstmt-&gt;hasModifyingCTE)
    PreventCommandIfParallelMode(CreateCommandTag((Node *) plannedstmt));


Shy of that Maybe in PostgreSQL 11, or 12?