DELETE FROM
Удаляет строки из таблицы, заданные с помощью условия WHERE
.
Пример
DELETE FROM my_table
WHERE Key1 == 1 AND Key2 >= "One";
DELETE FROM ... ON
Используется для удаления данных на основе результатов подзапроса. Набор колонок, возвращаемых подзапросом, должен быть подмножеством колонок обновляемой таблицы, и в составе возвращаемых колонок обязательно должны присутствовать все колонки первичного ключа таблицы. Типы данных возвращаемых подзапросом колонок должны совпадать с типами данных соответствующих колонок таблицы.
Для поиска удаляемых из таблицы записей используется значение первичного ключа. Присутствие других (неключевых) колонок таблицы в составе выходных колонок подзапроса не влияет на результаты операции удаления.
Пример
$to_delete = (
SELECT Key, SubKey FROM my_table WHERE Value = "ToDelete" LIMIT 100
);
DELETE FROM my_table ON
SELECT * FROM $to_delete;