Sobes.tech
Junior — Middle

O que é mais rápido — remover dados com o comando DELETE ou limpar a tabela com TRUNCATE?

sobes.tech IA

Resposta da IA

O comando TRUNCATE geralmente funciona mais rápido do que DELETE quando precisa remover todos os dados de uma tabela. Isso ocorre porque o TRUNCATE não remove linhas uma a uma, mas limpa toda a tabela rapidamente, muitas vezes redefinindo as páginas de dados e não registrando operações de exclusão individuais no log de transações.

Ao contrário do DELETE, que remove linhas uma a uma e pode ativar gatilhos, o TRUNCATE não ativa gatilhos e não pode ser usado com condições WHERE — ele remove todos os dados de uma só vez.

Exemplo:

-- Remover todas as linhas (mais lento)
DELETE FROM users;

-- Limpeza rápida da tabela
TRUNCATE TABLE users;

Portanto, se precisar limpar toda a tabela rapidamente, é melhor usar TRUNCATE.