42

对于sqlalchemy,谁能温柔地给出一个列的简单的SQL函数例子,比如sum, average, min, , (下面以一个例子为例)。maxscore

至于这个映射器:

class Score(Base):
    #...
    name = Column(String)
    score= Column(Integer)
    #...
4

2 回答 2

64

有关用法,请参阅SQL 表达式语言教程。下面的代码显示了用法:

from sqlalchemy.sql import func
qry = session.query(func.max(Score.score).label("max_score"), 
                    func.sum(Score.score).label("total_score"),
                    )
qry = qry.group_by(Score.name)
for _res in qry.all():
    print _res
于 2012-08-06T16:37:30.907 回答
0

SQLAlchemy 文档中,对于sum方法,我们需要使用functions.sum(). 正如我们所见:

from sqlalchemy.sql import functions

result = session.query(
    functions.sum(Model.value_a + Model.value_b)
).scalar()

这将产生一个像这样的sql:

SELECT sum(public.model.value_a + public.model.value_b) AS sum_1 ...
于 2021-11-30T13:50:46.800 回答