使用时间戳从一个表值更新另一个表


Update another table from one table value with timestamps

当另一个表(称为"商店")上的行超过30天时,我正在尝试更新一个名为"订单"的表。

当"存储"上的值被创建时,它会被赋予一个添加到表中的时间戳。但是,一旦该值超过30天,我就需要它来获取该单元格的ID(这是一个每行具有唯一ID的列),并在名为"orders"的表中检查该ID,并更新该ID所在的另一列。

到目前为止,我已经写了这篇文章,但它显然是错误的:

<?php
    include ('connectdb.php'); 
    $query = $db->query("SELECT * FROM store WHERE open_time < (NOW()- INTERVAL 30 DAYS)");
    $update = $db->prepare("UPDATE orders SET notified=-1 WHERE unique_id=$query");
    $db = null;
?>

如果表在同一个数据库上,只需在WHERE子句中使用一个子select,如下所示:MYSQL UPDATE with in和Subquery

否则,将ID聚合到一个数组中,并在WHERE子句中用内爆连接它们。别忘了引用每个ID。

此外,请尝试只选择所需的列(unique_id),而不是一次选择所有列(*)。