Как фильтровать запрос в sqlalchemy по году (столбец datetime)

StackOverflow https://stackoverflow.com/questions/1453591

  •  12-09-2019
  •  | 
  •  

Вопрос

У меня есть таблица в sqlalchemy 0.4 со столбцом type.DateTime:

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

Я хочу выбрать записи, в этом столбце которых указан конкретный год, используя модель.Как это сделать?Я думал, что это нужно сделать так:

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

# process data in my_query

Расставаться с ???для меня непонятно.

Это было полезно?

Решение

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

Для референа: https://docs.sqlalchemy.org/en/13/core/sqlelement.html#sqlalchemy.sql.expression.extract

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top