使用另一个表中的天数值更新值-mysql

使用另一个表中的天数值更新值-mysql,mysql,Mysql,我需要从一个表中更新值,从另一个表中获取天数值: orders: pid status =========== ========== 1 5 2 5 3 4 post: pid days ========== =========== 3 30 在这种情况下,我需要在30天后(post表中

我需要从一个表中更新值,从另一个表中获取天数值:

orders:
        pid     status
=========== ==========
          1          5
          2          5
          3          4

post:
pid               days 
========== =========== 
         3          30 
在这种情况下,我需要在30天后(post表中的值)将pid 3的状态更新为5。 我怎样才能做到这一点

提前谢谢你。

post表中的“天”字段是日期时间数据类型

代码-

更新订单o内部连接柱p on p.pid=o.pid
设置状态=5
其中DATEDIFF(p.days,CURDATE())<-29;
代码解释

连接两个表之后,where语句用于标识
30天以上的所有PID。

您能更具体一点吗?谢谢你的回复,很抱歉没有正确解释我自己。插入新订单id后,实时开始。现在post表中的天数应该是倒数计时的天数,所以基本上需要的是,在订单中插入新Id后的30天之后,订单中的状态从4变为5。在这种情况下是30天,但它可以是任何其他值,并且天是实时的。感谢您的澄清。代码和演示已相应更新。非常感谢!我对您的查询进行了一点修改,效果很好!谢谢,祝你今天愉快
update orders o inner join post p on p.pid = o.pid  
set status = 5
where DATEDIFF(p.days,CURDATE()) < -29;