I have tried this 3 different ways for my delete. I would like to delete the row from table buylist_products if the conditions are ok.
try 1 :
DELETE FROM parkage_buylist_products bp, parkage_productsmeta pm, parkage_buylist b WHERE bp.product_id = pm.product_id AND (pm.meta_key = 'we_buy_price' OR pm.meta_key = 'we_buy_rule') AND pm.meta_value = 0 AND bp.order_id = b.order_id AND b.status = 'in_progress' AND b.order_id = 24
try 2 :
DELETE FROM parkage_buylist_products bp
LEFT JOIN parkage_productsmeta pm, parkage_buylist b
ON bp.product_id = pm.product_id
WHERE (pm.meta_key = 'we_buy_price' OR pm.meta_key = 'we_buy_rule')
AND pm.meta_value = 0
AND bp.order_id = b.order_id
AND b.status = 'in_progress'
AND b.order_id = 24
try 3 :
DELETE FROM parkage_buylist_products bp, parkage_buylist b
WHERE bp.order_id = b.order_id
AND b.status = 'in_progress'
AND b.order_id = 24
AND bp.product_id IN (SELECT pm.product_id
FROM parkage_productsmeta pm
WHERE (pm.meta_key = 'we_buy_price' OR pm.meta_key = 'we_buy_rule')
AND pm.meta_value = 0
For the first one i have tried, delete bp, delete bp.* which it gives me an error on syntax.
Thank you for your help