Ich glaube nicht, dass Interval
wird Ihnen dort helfen, da es nicht in der Lage wäre, DB-spezifische date[time]-Funktionen zu erzwingen. Sie sollten also wahrscheinlich die plattformspezifischen date[time]-Funktionen verwenden, um dies zu lösen.
Wenn Sie postgresql verwenden , der folgende Code sollte funktionieren (unter der Annahme von Items.days
ist ganzzahlig):
q = (session.query(Item)
.filter(func.age(now, Item.created_on) <=
func.make_interval(0, 0, 0, Item.days)
)
)
Siehe postgres'
Datums-/Zeitfunktionen und Operatoren
für weitere Informationen.