如何按年份过滤 sqlalchemy 中的查询(日期时间列) [英] How to filter query in sqlalchemy by year (datetime column)

查看:26
本文介绍了如何按年份过滤 sqlalchemy 中的查询(日期时间列)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在 sqlalchemy 0.4 中有带有 types.DateTime 列的表:

I have table in sqlalchemy 0.4 that with types.DateTime column:

Column("dfield", types.DateTime, index=True)

我想使用模型选择在此列中具有特定年份的记录.如何做到这一点?我认为应该这样做:

I want to select records, that has specific year in this column, using model. How to do this? I though it should be done like this:

selected_year = 2009
my_session = model.Session()
my_query = my_session.query(model.MyRecord).filter(model.dfield.??? == selected_year)

# process data in my_query

与???对我来说不清楚.

Part with ??? is for me unclear.

推荐答案

sqlalchemy.extract('year', model.MyRecord.dfield) == selected_year

参考:https://docs.sqlalchemy.org/en/13/core/sqlelement.html#sqlalchemy.sql.expression.extract

这篇关于如何按年份过滤 sqlalchemy 中的查询(日期时间列)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆