1
我有一些看起来像这样:如何在sqlalchemy关系中使用日期(时间)算术?
from sqlalchemy import sa
from sqlalchemy.ext.declarative import declarative_base
metadata = sa.MetaData(schema='myschema')
Base = declarative_base(metadata=metadata)
class MyThing(Base):
__tablename__ = 'thing'
...
id = sa.Column('id', sa.Integer, primary_key=True)
recent_things = sa.orm.relationship(
'OtherThing',
primaryjoin="and(MyThing.id==OtherThing.thing_id,"
"OtherThing.timestamp >= now - 60)"
)
class OtherThing(Base):
__tablename__ = 'others'
...
thing_id = sa.Column('thing_id', sa.Integer, nullable=False)
timestamp = sa.Column('timestamp', sa.DateTime)
不幸的是,这是行不通的。我也试过>= remote('now - 60')
和其他一些变化。各种例外都会失败。
如何正确设置此查询来执行我想要的操作?我发现了一个暗示函数的结果,但它似乎不再是sqlalchemy的一部分。