Sobes.tech
Junior — Middle

Ma tez tez — DELETE buyruği bilan ma'lumotlarni o'chirish yoki TRUNCATE bilan jadvalni tozalashmi?

sobes.tech AI

AIdan javob

Команда TRUNCATE зазвичай працює швидше, ніж DELETE, коли потрібно видалити всі дані з таблиці. Це пов'язано з тим, що TRUNCATE не видаляє рядки по одному, а швидко очищає всю таблицю, часто скидаючи сторінки даних і не записуючи окремі операції видалення у журнал транзакцій.

На відміну від DELETE, який видаляє рядки по одному і може викликати тригери, TRUNCATE не викликає тригери і не може використовуватися з умовами WHERE — він видаляє всі дані цілком.

Приклад:

-- Видалення всіх рядків (повільніше)
DELETE FROM users;

-- Швидке очищення таблиці
TRUNCATE TABLE users;

Отже, якщо потрібно швидко очистити всю таблицю, краще використовувати TRUNCATE.