【问题标题】:Query By Last Month, Last Week, Yesterday, And So On按上个月、上周、昨天等查询
【发布时间】:2011-08-17 13:33:56
【问题描述】:

我有orders 表,其中包含orderIDorder_date

我正在尝试查询上周、上个月甚至昨天的数据,但是我不知道如何从当前时间中减去时间

我的 order_date 字段是 TIMESTAMP 类型,任何想法,任何帮助,将不胜感激

【问题讨论】:

    标签: php mysql date timestamp


    【解决方案1】:

    您可以使用 DATE_SUB:

    ... WHERE order_date > DATE_SUB( NOW(), INTERVAL 1 MONTH )
    

    上个月服用,

    ... WHERE order_date > DATE_SUB( NOW(), INTERVAL 1 WEEK )
    

    上周获得,

    ... WHERE order_date > DATE_SUB( NOW(), INTERVAL 1 DAY )
    

    为了得到今天和

    ... WHERE order_date BETWEEN ( DATE_SUB( NOW(), INTERVAL 2 DAY ), DATE_SUB( NOW(), INTERVAL 1 DAY ) )
    

    获取前一天。

    这是你要求的吗?

    【讨论】:

    • 没错,这些例子正是我所要求的,非常感谢,我会投票赞成你的回答,如果我有特权,再次感谢
    • 我可以私下联系你吗?如何? :D
    【解决方案2】:

    【讨论】:

    【解决方案3】:

    这里的线索是 DATEDIFF 和 HAVING。

    过去 30 天尝试这样的事情(凭记忆):

    SELECT orderID, DATEDIFF(order_date, NOW()) AS days FROM table HAVING days <= 30
    

    【讨论】:

      猜你喜欢
      • 2010-12-25
      • 2013-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多