UPDATE b_product_attribute SET state = 0 WHERE id IN (SELECT * FROM (SELECT id FROM b_product_attribute WHERE productid = 730 AND id NOT IN (1379,1380,1381)) bpa);
上述为正确写法,错误格式如下:
UPDATE b_product_attribute SET state = 0 WHERE id IN (SELECT id FROM b_product_attribute WHERE productid = 730 AND id NOT IN (1379,1380,1381));
原因为:不可对同一表同时进行更新和查询操作,所以应加入select * from 创建新别名