烧瓶中的日期查询时,当GE或LE时,无空时空空



我有一个小瓶应用程序中连接到sqllite数据库的sqlalchemy。

如果我这样做:

check = MyTable.query.filter(MyTable.run_dt >= datetime.date(2017,12,14)).all()

然后,我收到一个sqlalchemy对象,其中包含一个大于或等于2017-12-14的所有行的列表。它包含几行,日期为" 2017-12-14"。这就是我期望的。

如果我这样做:

check = MyTable.query.filter(MyTable.run_dt == datetime.date(2017,12,14)).all()

我有一个空套。我不知道为什么。

run_dt是模型对象中的db.column(db.date)。我尝试将其切换到字符串,并且它不起作用。

实际上,用字符串做上述工作。

我很抱歉,如果这是一个愚蠢的问题,但我发现它令人困惑,并感谢任何人都能提供的任何帮助。

因此,一种解决方案是将日期降至'%y-%m-%d%h:%m:%s'格式。这解决了问题。

但是,我不明白为什么这是有效的和dateTime.datetime(2017,12,14,0,0,0)不起作用。

相关内容