我正在尝试删除表“oc_products”中没有特定类别 ID 的所有记录。我创建了一个使用 INNER JOIN 列出这些产品的 SELECT 查询,因为这些类别位于单独的表中。
我不知道如何使用 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
它显示错误“意外的关键字,(靠近 INNER JOIN)”。
最佳答案
将 .* 添加到第一行的 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
关于mysql - SQL如何使用INNER JOIN从表中删除数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47762299/