首页 > 解决方案 > MySQL DATE 查询不返回任何内容

问题描述

有人可以告诉我为什么以下查询什么都不返回:

$statement = $pdo->prepare("SELECT * from basiszins WHERE start_datum > '2016-07-02'");
    if($statement->execute()) {
        while($fetchtest = $statement->fetch()) {
            echo $fetchtest['start_datum']."<br>";
        }
    }
    else {
        echo "SQL Error <br />";
        echo $statement->queryString."<br />";
        echo $statement->errorInfo()[2];
    }

MySQL 列的类型为 Date。数据库条目看起来像例如“2014-07-01”。查询返回一个等于 (=) 运算符和匹配的查询字符串,但不是一个更大的 as (>) 运算符。

有人可以向我解释为什么吗?

谢谢!

标签: mysql

解决方案


Sample of your problem:

create table dates(
someDate Date
);
insert into dates (`someDate`) values ('2021-01-01'),('2019-01-01'),('2020-01-01');

Query

SELECT * from dates where someDate > '2020-01-01'

Result

2021-01-01

http://sqlfiddle.com/#!9/38b5ab/1


推荐阅读