Оператор DELETE FROM використовується для видалення рядків у таблиці. Наприклад:
|
1 2 |
DELETE FROM Customers WHERE customer_id = 5; |
Тут ми видаляємо рядок з таблиці Customers, де customer_id дорівнює 5.

Видалити всі рядки у таблиці
За допомогою оператора WHERE ми можемо вказати, які рядки потрібно видалити. Однак якщо потрібно видалити відразу всі рядки, достатньо буде просто не вказувати оператор WHERE. Наприклад:
|
1 |
DELETE FROM Customers; |
Тут ми видаляємо усі рядки з таблиці Customers.
Примітка: Будьте обережні при використанні оператора DELETE FROM. Записи можуть бути безповоротно втрачені, якщо у вас не виявиться резервних копій.
Оператор TRUNCATE TABLE в SQL
Оператор TRUNCATE TABLE — це ще один спосіб одночасного видалення одразу всіх рядків у таблиці. Наприклад:
|
1 |
TRUNCATE TABLE Customers; |
Тут ми робимо те саме, що й вище — видаляємо всі рядки з таблиці Customers.
Примітка: Оператор TRUNCATE TABLE заборонено використовувати у зв’язці з оператором WHERE.
DELETE FROM проти TRUNCATE TABLE в SQL
Основна відмінність між обома операторами полягає в тому, що оператор DELETE FROM може використовуватися у зв’язці з оператором WHERE, а TRUNCATE TABLE — ні. Це означає, що ми можемо видалити один або кілька рядків, використовуючи оператор DELETE FROM, тоді як оператор TRUNCATE TABLE видаляє відразу весь вміст таблиці.
Ми можемо виконати роботу оператора TRUNCATE TABLE оператором DELETE FROM, просто не вказуючи оператор WHERE. Наприклад, наступний код:
|
1 |
DELETE FROM Customers; |
ідентичний
|
1 |
TRUNCATE TABLE Customers; |
