Sono un po 'confuso riguardo al filtro in SQLAlchemy.Confronto di DateTime nel filtro SQLAlchemy
Io attualmente sto cercando di filtrare le voci maggiori di 10 settimane, così ho
current_time = datetime.datetime.utcnow()
potential = session.query(Subject).filter(Subject.time < current_time - datetime.timedelta(weeks=10))
Tuttavia, il potential.count()
restituisce sempre 0
.
mia teoria è che non sto usando la dichiarazione del filtro correttamente perché quando cerco di utilizzare una colonna che non è di tipo Column(DateTime())
ma invece
Colonna (String (250))
come
potential = session.query(Subject).filter(Subject.string_field < current_time - datetime.timedelta(weeks=10))
SQLAlchemy non si lamenterà ancora.
Inoltre, quando faccio un controllo manuale con
curr_time - session.query(Subject).first().time > datetime.timedelta(weeks=10)
ottengo True
il che implica che il conteggio non dovrebbe essere 0
.
Mi manca qualcosa di ovvio? Qualsiasi aiuto sarebbe apprezzato.