sqlalchemy group_by和sum

时间:2015-07-16 10:53:32

标签: python mysql sqlalchemy

我有一个SiteStaff表,我希望将所有员工与同一个staffId组合在一起并添加holiday列。

>     group =  session.query(SiteStaff, func.sum(SiteStaff.Holiday)).group_by(SiteStaff.StaffID).all()
>     
>     print group

输出将人员组合在一起,但不添加列。

这是我想模仿的sql:

UPDATE Staff p, (SELECT StaffID, SUM(Holiday) as mysum
 FROM SiteStaff GROUP BY StaffID) as s

    SET p.TotalDaysHolidayAllowed = s.mysum
    WHERE p.StaffID = s.StaffID

1 个答案:

答案 0 :(得分:1)

正是StaffSite部分阻止了它的工作。我需要像这样添加每个字段:

session.query(SiteStaff.StaffID, func.sum(SiteStaff.Holiday)).group_by(SiteStaff.StaffID).all()