【问题标题】:Delete item from the table if it's date is passed [duplicate]如果日期已过,则从表中删除项目[重复]
【发布时间】:2017-01-06 10:49:46
【问题描述】:

嘿,我有一个表,其中每一行都包含多个数据,其中一个是日期,我正在尝试在 php 中编写一个代码,该代码将在表上运行并删除其日期已过期的每一行,例如,如果今天的日期是 06/01/2017,比它的日期小于今天的每个项目都应该被删除,问题是我真的不知道如何编写这个函数所以如果有人可以给我发一个教程或例子我该怎么做才好。

【问题讨论】:

  • 你必须至少告诉使用表名、字段名并展示你到目前为止所做的事情。您尝试的是非常基本的 mysql 语法。
  • 请至少尝试一次,您会得到答案。

标签: php mysql sql database date


【解决方案1】:

DELETE FROM your_table WHERE your_date_column < NOW() 关注 SQL 查询...然后只需使用 PDO 执行它

您的问题实际上很笼统,听起来像是家庭作业...否则,发布一些代码尝试就像表明您事先尝试/进行了一些研究一样受到赞赏。 :)

【讨论】:

    【解决方案2】:

    您需要创建一个页面来设置明天的日期并执行 mysql 命令:

    $conn = new mysqli($db_servername, $db_username, $db_password, $db_dbname);
    if ($conn->connect_error) { } 
    
    $tomorrow = new DateTime('tomorrow');
    $tomorrow->format('Y-m-d');
    
    $sql = "DELETE FROM 'yourtable' WHERE Date < '{$tomorrow}'";
    $result = $conn->query($sql);
    

    【讨论】:

      【解决方案3】:

      您可以使用此查询删除过去的记录

      mysql> delete from your_table where date < curdate();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-01-16
        • 1970-01-01
        • 1970-01-01
        • 2016-11-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多