使用flask-sqlalchemy按年/月搜索

时间:2016-10-14 12:22:28

标签: python sqlalchemy

感到沉沦,

关于使用flask-sqlalchemy的年/月搜索..

是否有按年/月搜索的pythonic和short方式?

myquery = Table.query.filter(Table.dt.year == 2016, Table.dt.month == 10)

(这实际上是错误的,但只是为了表达我的逻辑)

Table和dt就是这样的:

class Table(db.Model):

    ...
    dt = db.Column(db.Datetime)

2 个答案:

答案 0 :(得分:3)

我测试的另一个解决方案是使用过滤器代替过滤器(...)。过滤器(...)

示例:

.filter(extract('year', Record.dt) == 2016, extract('month', Record.dt) == 10)

答案 1 :(得分:1)

我找到了基于此linklink

的解决方案

简单地说:

.filter(extract('year', Table.dt) == 2016).filter(extract('month', Table.dt) == 10).all()

提取来自 sqlalchemy ,所以有必要导入:

from sqlalchemy import extract