SQL запрос на удаление заказов

Автор piter, 01 апреля 2016, 16:37:24

« назад - далее »

piter

Добрый день!
Такой вопрос...
Необходимо удалить уже обработанные заказы и все что с ними связано.
Можно по отдельности удалить с тавлиц базы, то-есть..

Строка ="DELETE FROM ps_cart WHERE ps_cart.id_cart = "+Д4;
Строка ="DELETE FROM ps_cart_product WHERE ps_cart_product.id_cart = "+Д4;
Строка ="DELETE FROM ps_orders WHERE ps_ps_orders.id_order = "+Д3;
Строка ="DELETE FROM ps_order_history WHERE ps_order_history.id_order = "+Д3;
Строка ="DELETE FROM ps_order_detail WHERE ps_order_detail.id_order = "+Д3;

Но хотелось соединить это все в один запрос.
Подскажите как это сделать.
Спасибо!

Миколас

Такой запрос удалит все дочерние записи из таблицы ps_cart_product.
DELETE pc.*
FROM ps_cart  pc
LEFT JOIN ps_cart_product pcp ON  pc.id_cart = pcp.id_cart
WHERE pcp.id_cart = "+Д4";


Только проверяй на локалке, а то если ошибкшься в условии, в нем не будут учавствствовать поле из родительской таблицы, то будут удалены все записи таблицы ps_cart_product.