Оператор DELETE
Оператор DELETE удаляет из таблицы имя_таблицы строки, удовлетворяющие заданным в where_definition условиям, и возвращает число удаленных записей.
Если оператор DELETE запускается без определения WHERE, то удаляются все строки.
Синтаксис:
DELETE [LOW_PRIORITY] FROM имя_таблицы [WHERE where_definition] [LIMIT rows]
Например, следующая команда удалит из таблицы Persons все записи, у которых поле «год рождения» (bday) больше 2003:
mysql> DELETE FROM Persons WHERE bday>2003;
Удалить все записи в таблице можно еще и с помощью такой команды:
mysql> DELETE FROM Persons WHERE 1>0;
Но этот метод работает гораздо медленнее, чем использование той же команды без условия:
mysql> DELETE FROM Persons;
Специфическая для MySQL опция LIMIT для команды DELETE указывает серверу максимальное количество строк, которые следует удалить до возврата управления клиенту. Эта опция может использоваться для гарантии того, что данная команда DELETE не потребует слишком много времени для выполнения.