Basta usare una clausola where che non selezionerà alcuna riga:
create table xyz_new as select * from xyz where 1=0;
Limiti
Le seguenti cose non verranno copiate nella nuova tabella:
- sequenze
- trigger
- indici
- alcuni vincoli potrebbero non essere copiati
- registri delle viste materializzate
Anche questo non gestisce le partizioni