【问题标题】:MySql Select records where date is from last month or olderMySql 选择日期来自上个月或更早的记录
【发布时间】:2013-09-10 00:41:38
【问题描述】:

我正在尝试选择日期为上个月最后一天或更早日期的数据,因此不应显示当前月份的数据。

查询:

SELECT * FROM payments WHERE request_date ... 

不知道如何继续。

谢谢

【问题讨论】:

    标签: php mysql


    【解决方案1】:

    试试:

    SELECT * FROM payments WHERE request_date < DATE_FORMAT(NOW(),'%Y-%m-01 00:00:00')
    

    当月第一天凌晨 12:00 之前的任何时间。

    【讨论】:

      【解决方案2】:
      SELECT * FROM payments WHERE request_date <= (curdate() - interval dayofmonth(curdate()) DAY);
      

      【讨论】:

        【解决方案3】:
        SELECT * FROM payments WHERE request_date BETWEEN DATE_SUB(request_date, INTERVAL 1 MONTH)
        

        【讨论】:

          【解决方案4】:

          这样的事情应该为你做:

          SELECT * FROM payments WHERE DATE_SUB(CURDATE(),INTERVAL 31 DAY) >= request_date;
          

          【讨论】:

            【解决方案5】:

            "SELECT * FROM payment WHERE request_date ='".data('Y-m-t',strtotime("-1 month",time()))."'"

            【讨论】:

              【解决方案6】:

              试试这个:

              SELECT * FROM payments WHERE datediff(now(),request_date)>30
              

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2019-02-14
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多