给出以下模型定义:
class User(Base): ... birthday = Column(Date, index=True) # Ex. '1987-01-17' in the database ...
目标是检索某个年龄范围内的所有用户,例如 18 到 30 岁之间的用户
要实现所需的过滤,可以使用以下 SQLAlchemy 查询:
query = DBSession.query(User).filter( User.birthday.between('1985-01-17', '1988-01-17') )
解释:
除了使用 Between( ) 运算符,还有其他过滤日期字段的方法:
# Filter by upper bound date query = DBSession.query(User).filter(User.birthday <= '1988-01-17') # Filter by lower bound date query = DBSession.query(User).filter(User.birthday >= '1985-01-17') # Filter by equality query = DBSession.query(User).filter(User.birthday == '1987-01-17')
以上是如何使用日期字段按年龄范围过滤 SQLAlchemy 用户?的详细内容。更多信息请关注PHP中文网其他相关文章!