【发布时间】:2018-05-25 12:42:13
【问题描述】:
我正在尝试删除表“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
它显示错误“Unexpected keyword, (near INNER JOIN)”。
【问题讨论】:
-
编写子查询获取所有记录,然后使用where子句。 DELETE oc_product FROM oc_product where oc_product in (sub query )
-
@sreenivas 我试过了,但出现错误 "Table 'oc_product' 被指定了两次,既作为 'DELETE' 的目标,又作为数据的单独源" .我了解问题,但我需要更改什么?
标签: mysql phpmyadmin