All pastes #911464 Raw Edit

Mine

public text v1 · immutable
·published 2008-02-20 18:45 UTC
rendered paste body
sel = select([Address.user_id, func.count(Address.id).label('count')]).group_by(Address.user_id).alias()

print User.query.outerjoin(('addresses', sel)).add_column(sel.c.count).all()



SELECT users.id AS users_id, users.name AS users_name, anon_1.count AS anon_1_count 
FROM users LEFT OUTER JOIN (SELECT addresses.user_id AS user_id, count(addresses.id) AS count 
FROM addresses GROUP BY addresses.user_id) AS anon_1 ON users.id = anon_1.user_id ORDER BY users.oid