can I quickly create tables for each partition?
If you don't need the original data, you can exchange the partitions with empty tables that you create yourself.

Demo:

SQL&gt; create table originaltable
(
  id number primary key
)
partition by range (id)
(
  partition original1 values less than (10),
  partition original2 values less than (20),
  partition original3 values less than (MAXVALUE)
);

Table created.

SQL&gt; insert into originaltable values (9);

1 row created.

SQL&gt; insert into originaltable values (11);

1 row created.

SQL&gt; insert into originaltable values (55);

1 row created.

SQL&gt; create table newtable1_lessthan10
(
  id number primary key
); 

Table created.

SQL&gt; ALTER TABLE originaltable
  EXCHANGE PARTITION original1
  WITH TABLE newtable1_lessthan10
  WITHOUT VALIDATION; 

Table altered.

SQL&gt; select * from newtable1_lessthan10;

        ID
----------
         9

SQL&gt;