alter table exchange partition
è la risposta. Questo comando scambia il segmento di una partizione con il segmento di una tabella. È alla velocità della luce perché esegue solo alcuni scambi di riferimento. Quindi, hai bisogno di alcune tabelle temporanee, perché AFAIK non puoi scambiarle direttamente.
Qualcosa come:
create table tmp_table(same columns);
Add partition p_2011 in table ARCH_TABLE;
ALTER TABLE CURR_TABLE EXCHANGE PARTITION P_2011 WITH TABLE tmp_table;
ALTER TABLE ARCH_TABLE EXCHANGE PARTITION P_2011 WITH TABLE tmp_table;
Testare il codice prima dell'esecuzione.