他のテーブルに結合する 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
)
他のソースから、サブクエリで更新されているテーブルを指定できないことがわかりますが、他にそれを行う方法がわかりません.誰かが私を正しい方向に向けて助けて、必要に応じてこれを機能させることができることを願っています. ありがとう!