Date sqlite3基于日期时间(“现在”)选择条件错误

Date sqlite3基于日期时间(“现在”)选择条件错误,date,datetime,sqlite,Date,Datetime,Sqlite,我是sqlite的新手。我有一张名为matchs的表格,其中包含俱乐部锦标赛中即将到来的比赛。我想检索下一个即将到来的第一个事件 第一列是日期会话,格式为YYYY-MM-DD HH:MM:SS 所以我这样问: SELECT * FROM matchs WHERE date_session > datetime('now'); 2017_01_09 18:30:00 2017_01_09 19:30:00 2017_01_10 18:20:00 2017_01

我是sqlite的新手。我有一张名为matchs的表格,其中包含俱乐部锦标赛中即将到来的比赛。我想检索下一个即将到来的第一个事件

第一列是日期会话,格式为YYYY-MM-DD HH:MM:SS

所以我这样问:

SELECT * FROM matchs WHERE date_session > datetime('now');
    2017_01_09 18:30:00
    2017_01_09 19:30:00
    2017_01_10 18:20:00
    2017_01_10 20:40:00
    2017_01_12 18:20:00
    2017_01_12 20:40:00
    2017_01_16 18:30:00
我不明白为什么1月9日的行包含在结果中。要检查日期时间“now”是否有效,我只需输出它:

SELECT datetime('now');
    2017-01-10 09:30:55
如果我在手动设置的条件日期上执行查询,则效果良好:

SELECT * FROM matchs WHERE date_session > '2017_01_10 09:30';
    2017_01_10 18:20:00
    2017_01_10 20:40:00
    2017_01_12 18:20:00 
    2017_01_12 20:40:00
    2017_01_16 18:30:00
当然,因为我希望下一个即将到来的游戏总是能被返回,所以我不能手动设置这个日期条件。 有人能帮忙吗?我使用的是SQLite版本3.15。日期会话存储为文本。

-和u是不同的字符。在任何字符串比较中,\ u>-,因此最终只比较年份