SQLAlchemy でのフィルタリングについて少し混乱しています。
現在、10 週間を超えるエントリを除外しようとしているので、
current_time = datetime.datetime.utcnow()
potential = session.query(Subject).filter(Subject.time < current_time - datetime.timedelta(weeks=10))
ただし、 はpotential.count()
常に を返します0
。
私の理論は、フィルターステートメントを正しく使用していないということです。これは、型ではない列を使用しようとするとColumn(DateTime())
、代わりに
列(文字列(250))
お気に入り
potential = session.query(Subject).filter(Subject.string_field < current_time - datetime.timedelta(weeks=10))
SQLAlchemy はまだ文句を言いません。
また、手動チェックを行うと
curr_time - session.query(Subject).first().time > datetime.timedelta(weeks=10)
True
これは、カウントが であってはならないことを意味します0
。
明らかな何かが欠けていますか?どんな助けでも大歓迎です。