func.sum(TableName.count)是什么意思?

时间:2014-05-15 17:56:43

标签: python sqlalchemy

我正在将一些SQLAlchemy代码转换为Django ORM(...我是SQLA的新手)。

我有一行看起来像:

db_session.query(func.sum(MyTable.count)).filter_by(...).scalar()

目的似乎是生成一个简单的计数,但在网上找到的例子中,更常用的方法是:

db_session.query(func.count(MyTable.id))

......第一行是否做了与此不同的事情,或者它只是不恰当的?

我认为这可能是总计数的总和,但似乎只涉及一个表而没有group_by所以我不这么认为。

1 个答案:

答案 0 :(得分:1)

func.sum生成SUM表达式,对值进行求和。

func.count生成一个COUNT epxression,对值进行计数。

如果你有[1,2,3,4],总和将产生10,计数将产生4。