SQL如何使用INNER JOIN从表中删除数据

时间:2017-12-11 22:12:18

标签: mysql phpmyadmin

我正在尝试删除没有特定类别ID的表“oc_products”中的所有记录。我创建了一个SELECT查询,使用INNER JOIN列出这些产品,因为这些类别在一个单独的表中。

我无法弄清楚如何使用DELETE功能删除显示的记录。

这就是我的代码:

DELETE oc_product
FROM oc_product
INNER JOIN oc_product_to_category ON oc_product.product_id = oc_product_to_category.product_id
WHERE oc_product_to_category.category_id = 343

显示错误“Unexpected keyword,(INNER JOIN附近)”。

1 个答案:

答案 0 :(得分:1)

在第一行添加。*到p。

尝试:

DELETE p.* FROM oc_product p
INNER JOIN oc_product_to_category pc ON p.product_id = 
    pc.product_id
WHERE pc.category_id = 343