УДАЛИТЬ MySQL с помощью JOIN
Удалить несколько записей из нескольких таблиц с помощью Single Query, как показано ниже:
Обычно вы используете INNER JOIN в операторе SELECT для выбора записей из таблицы, которые имеют соответствующие записи в других таблицах. Мы также можем использовать предложение INNER JOIN с оператором DELETE для удаления записей из таблицы, а также соответствующих записей в других таблицах, например, чтобы удалить записи из таблиц T1 и T2, которые удовлетворяют определенному условию, вы используете следующую инструкцию: 1005 *
DELETE T1, T2
FROM T1
INNER JOIN T2 ON T1.key = T2.key
WHERE condition
Обратите внимание, что вы ставите имена таблиц T1 и T2 между DELETE и FROM. Если вы опустите таблицу T1, оператор DELETE удалит только записи в таблице T2, а если вы опустите таблицу T2, будут удалены только записи в таблице T1.
Условие соединения T1.key = T2
.key указывает соответствующие записи в таблице T2, которые необходимо удалить.
Условие в предложении WHERE указывает, какие записи в T1 и T2 необходимо удалить.