代码之家  ›  专栏  ›  技术社区  ›  KaoriYui

Mysql获取失效日期的类型是varchar

  •  1
  • KaoriYui  · 技术社区  · 7 年前

    //i did now include the whole query code below is my query string.
    
    $now = date('m/d/Y');
    
    $sql = "SELECT * FROM todos WHERE DATE(due_date) < '$now'";
    
    //other query here.
    

    我的输出低于今天2017年3月7日的日期

    06/02/2018
    05/13/2016
    05/23/2017
    04/15/2015
    04/24/2019
    

    1 回复  |  直到 7 年前
        1
  •  1
  •   Gordon Linoff    7 年前

    转换为常规日期,只需使用数据库进行比较:

    SELECT *
    FROM todos 
    WHERE str_to_date(due_date, '%m/%d/%Y') < curdate();
    

    没有必要从应用程序中传入当前日期——除非您特别注意时区问题。