使用class中的相同表更新表

时间:2018-05-09 10:56:51

标签: mysql sql database join

您好我正在使用同一个表中的表更新我的表列,但它给了我错误:

  

您无法在FROM子句

中为更新指定目标表'orderitem'

这是我的问题:

update orderitem set status = 3 where id in 
(select oi.id from `order` o inner join orderitem oi on oi.order_id = o.id where o.time < 1514764800 and oi.status = 1);

1 个答案:

答案 0 :(得分:1)

改为使用join

update orderitem oi join
       `order` o
       on oi.order_id = o.id 
    set oi.status = 3
    where oi.status = 1 and o.time < 1514764800;