JeffP
JeffP

Reputation: 555

web2py: left-outer join not giving all records on left

Why is this code not returning groups with zero (0) count? (I am sure there are groups with zero count)

count = db.auth_membership.id.count()
groups = db().select(db.auth_membership.group_id, db.auth_group.role, count, 
    left=db.auth_group.on(db.auth_membership.group_id==db.auth_group.id),
    groupby=db.auth_membership.group_id)

Upvotes: 0

Views: 58

Answers (1)

JeffP
JeffP

Reputation: 555

edited

I finally got it. Here's the query that worked:

query = db.auth_membership.group_id == db.auth_group.id
count = db.auth_membership.id.count()
groups = db(db.auth_group).select(db.auth_group.id, db.auth_group.role, db.auth_membership.id,
    count, 
    groupby=db.auth_group.id,
    left=db.auth_membership.on(query))

Upvotes: 0

Related Questions