【问题标题】:Correct way to fetch posts which are posted 3 days ago?获取 3 天前发布的帖子的正确方法?
【发布时间】:2013-04-09 01:06:28
【问题描述】:

我的数据有一个名为“日期”的列,其中包含 unix 日期格式的发布日期。我正在使用此查询来获取 3 天前发布的帖子

$result=mysql_query("SELECT * FROM track WHERE  
FROM_UNIXTIME(date,'%Y-%m-%d %h:%m:%s') > NOW() - INTERVAL 3 DAY AND
FROM_UNIXTIME(date,'%Y-%m-%d %h:%m:%s') < NOW() - INTERVAL 2 DAY");

这可行,但是,它会按日期选择 -48 小时和 -72 小时范围内的帖子。 但我想按日期名称获取帖子。我的意思是,例如,如果一个帖子是在 40 小时前添加的,现在理论上它不是 48 小时(2 天),但如果我们查看日期名称,它是 2 天前。我怎样才能获取这样的帖子?

【问题讨论】:

    标签: php mysql


    【解决方案1】:
    SELECT * FROM track WHERE  
    FROM_UNIXTIME(date,'%Y-%m-%d') = CURDATE() - INTERVAL 2 DAY
    

    【讨论】:

    • CUR_DATE() 应该是 CURDATE()
    • 哎呀。感谢您了解这一点。
    • 所以今天应该是 "FROM_UNIXTIME(date,'%Y-%m-%d') = CURDATE()" 奇怪的是我在之前的查询中得到了相同的结果。
    • 好的,我已经通过在 mySQL 中设置 *my timezone 解决了这个问题,方法是 mysql_query("SET time_zone = '+3:00'");
    猜你喜欢
    • 2014-06-12
    • 1970-01-01
    • 1970-01-01
    • 2011-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-27
    • 2014-06-04
    相关资源
    最近更新 更多