我正在尝试运行一个 UPDATE 来连接到其他表,并且在 WHERE 子句中有一个子查询。但是,我收到此错误:
1093 - 您不能在 FROM 子句中指定目标表 'csi' 进行更新
这是我的查询:
UPDATE mage_cataloginventory_stock_item csi
INNER JOIN mage_catalog_product_entity cpe
ON csi.product_id = cpe.entity_id
SET csi.Is_in_Stock = 0
WHERE cpe.sku IN (
SELECT cpe.sku
FROM mage_catalog_product_entity cpe
INNER JOIN mage_cataloginventory_stock_item CSI
ON CSI.product_id = cpe.entity_id
INNER JOIN mage_cataloginventory_stock_status CISS
ON CSI.product_id = CISS.product_ID
INNER JOIN mage_catalog_product_entity_int cpei
ON cpe.entity_id = cpei.entity_id
WHERE type_id = 'simple'
AND cpei.attribute_id = 80
AND CSI.Qty = 0 AND cpei.value = 1
)
我从其他来源看到您无法在子查询中指定要更新的表,但我不知道该怎么做。希望有人可以帮助我指出正确的方向,以便根据需要进行工作。谢谢!