meta.Session.query(Job).order_by(Job.min_level).order_by(Job.descr).filter(Job.tier==1).outerjoin((User_job_progress, User_job_progress.job_id==Job.job_id)).filter(User_job_progress.fb_uid==1)
results in a query of: FROM xxx_jobs LEFT OUTER JOIN xxx_user_job_progress ON xxx_user_job_progress.job_id = xxx_jobs.job_id WHERE xxx_jobs.tier = %s AND xxx_user_job_progress.fb_uid = %s ORDER BY xxx_jobs.min_level, xxx_jobs.descr but, what I am trying to achieve is FROM xxx_jobs LEFT OUTER JOIN xxx_user_job_progress ON (xxx_user_job_progress.job_id = xxx_jobs.job_id AND xxx_user_job_progress.fb_uid = %s) WHERE xxx_jobs.tier = %s ORDER BY xxx_jobs.min_level, xxx_jobs.descr I tried putting the .filter within the outerjoin, but the tuple object has no attribute filter. Adding a second condition results in ValueError: too many values to unpack. Passing a list doesn't appear to be parsed as there is no attribute _from_objects. I'm sure it is something I've missed somewhere. Thanks for your time. -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalch...@googlegroups.com. To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en.