Junior — Middle
Кое е по-бързо — изтриване на данни с командата DELETE или изчистване на таблицата чрез TRUNCATE?
sobes.tech AI
Отговор от AI
Командата TRUNCATE обикновено работи по-бързо от DELETE, когато трябва да изтриете всички данни от таблица. Това е така, защото TRUNCATE не изтрива редове по един, а бързо изчиства цялата таблица, често нулирайки страниците с данни и без да записва отделни операции за изтриване в транзакционния журнал.
За разлика от DELETE, който изтрива редове един по един и може да активира тригери, TRUNCATE не активира тригери и не може да се използва с условия WHERE — изтрива всички данни наведнъж.
Пример:
-- Изтриване на всички редове (по-бавно)
DELETE FROM users;
-- Бързо почистване на таблицата
TRUNCATE TABLE users;
Ако трябва бързо да изчистите цялата таблица, по-добре е да използвате TRUNCATE.