Ambos jogam os dados fora. E não é 'transacional', então você não pode recuperar os dados com um
ROLLBACK . DROP PARTITION também remove a partição da lista de partições. TRUNCATE PARTITION deixa a partição no lugar, mas vazia. Um uso comum de
DROP PARTITION é remover linhas "antigas". Pense em uma tabela de informações que precisa ser guardada por apenas 90 dias. Use PARTITION BY RANGE(TO_DAYS(...)) e ter partições semanais. Então, toda semana DROP o mais antigo e ADD uma nova partição. Mais discussão aqui
. Não vi necessidade de
TRUNCATE . Esteja ciente de que existem muito poucos casos de uso em que você pode obter algum benefício do
PARTITIONing . Até agora, encontrei usos apenas para PARTITION BY RANGE .