php - 查询以从数据库中选择从过去某个时间到现在创建的记录

标签 php mysql database timestamp

我是一个相对新手,希望得到帮助:)

我正在寻找从现在到过去某个时间戳之间的某个时间创建的 mysql 表中的条目。过去的这个时间存储在一个变量中(比如 $timeinthepast,几个小时前或昨天,等等)。表中的“timecreated”列是条目创建的时间戳。

下面的方法可行吗?如果没有,那会是什么?

谢谢!

    <?php

        $query = mysql_query("SELECT * FROM table1 
                 WHERE timecreated = DATE_ADD(NOW(), INTERVAL -$timeinthepast)");

    ?>

我的基础是:Query to select records from a database that were created within the last 24 hours

最佳答案

只要 SQL 中的 $timeinthepast 有效(例如 1 MONTH2 HOUR),您就可以尝试 BETWEEN

$query = mysql_query("SELECT * FROM table1 
         WHERE timecreated BETWEEN 
         DATE_SUB(NOW(), INTERVAL $timeinthepast) AND NOW()");

关于php - 查询以从数据库中选择从过去某个时间到现在创建的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8622187/

相关文章:

PHP - 使用 cURL 将 cookie session 存储到变量/内存中

php - 存储和处理 MySQL 结果

mysql - 合并两个表

mysql - 时间戳格式不正确的外键

php - Zend框架的MVC数据设计问题

php - 使用 jquery 的一页 Codeigniter 站点? Ajax ?

php - 在这种特殊情况下,什么原因导致 "Headers already sent"?

php - 如何在 php 中为网上商店制作订单历史记录?

php - 更新了一列,但 'published_at' 列也更新了? [拉拉维尔 5]

mysql - 外键作为主键