- вилучає вибрані рядки із однієї (!) вказаної таблиці.
В секції FROM вказується таблиця, що містить рядки, які необхідно вилучити.
В секції WHERE вказується критерій відбору тих рядків, які необхідно вилучити.
Нехай працівник Іванов звільняється.
3). Вилучити інформацію про Іванова із БД
3). DELETE FROM Pracivnyky,
WHERE Prizv = ‘Іванов’
Секція WHERE оператора DELETE повністю аналогічна секції WHERE оператора SELECT.
Оператор DELETE такого типу здійснює пошук тих рядків, які необхідно вилучити із таблиці, - тому цей оператор називають пошуковий.
Є ще одна форма оператора DELETE – позиційна, яка завжди вилучає лише один рядок (цей оператор використовується лише в програмному SQL).
Розглянемо ще приклад:
4). Вилучити всі замовлення, зроблені до 1 січня 2000 р.
4). DELETE FROM Zamovlennia
WHERE Data_Zamovl < ‘01-JAN-2000’
Зауваження:
Перед виконанням оператора DELETE (в інтерактивному режимі) спочатку рекомендується виконати оператор SELECT * з тими самими секціями FROM та WHERE – щоб переконатися, що будуть вилучені саме ті рядки, які потрібно вилучати; а тоді вже – замінити SELECT * на DELETE.
Якщо оператор DELETE викликається із програми – то варто його протестувати подібним чином: скопіювати текст оператора DELETE в якусь із утиліт, призначених для виконання SQL – запитів (наприклад, SQL – Explorer), замінити DELETE на SELECT * і виконати отриманий запит на вибірку – щоб переконатися, що оператор DELETE буде вилучати саме ті рядки, які ми хочемо вилучити.