SQLAlchemy group_by其中select与聚合目标不同

时间:2016-12-30 13:31:27

标签: python sql postgresql group-by sqlalchemy

我正在努力用SQL Alchemy写一个聚合的GROUP BY查询,它返回聚合在“down down”表上的结果和一个恰好是分组键的连接实体“higher up”,而不是返回聚合实体,例如:

"C:\Users\JOHNDOE\SomeDir\fbwfmgr“

但我想返回(Part,the_count),而不是(PSU,the_count)。写qry = session.query(PSU, func.count(PSU.id)).join(PSU).join(StockUnit).join(Part).group_by(Part) 以错误的方式查询。

以下是使用SQL Alchemy语义的SQL查询:

session.query(Part, func.count(...))

也许这可以通过SQLAlchemy基本函数来实现吗?

1 个答案:

答案 0 :(得分:0)

使用select_from()来控制联接的“左侧”,以备不时之需:

qry = session.query(Part, func.count(PSU.id)).\
    select_from(PSU).\
    join(StockUnit).\
    join(Part).\
    group_by(Part)