Tente este método:
- Primeiro de tudo, crie uma coluna adicional na tabela de clientes conforme você deseja para a partição lógica.
- Atualize essas colunas usando a tabela customere intermediária
- Depois de atualizar, trunque sua tabela
Para cada mês você pode executar este script e isso lhe dará o particionamento lógico.
update customer set partition_column=to_char(Join_Date, 'YYYY-MM')
join intermediate_table on intermediate_table.custid=customer.custid
and intermediate_table.Join_Date=customer.Join_Date
truncate table intermediate_table