Lots of folks love sqlalchemy. I just don't get it. I only have to use it infrequently, but when I do, I spend very little time crafting my SQL and a much longer time translating it to sqlalchemy's query builder. Even a join is a PITA.
Regarding the joins:
j=t_user.join(t_address, t_user.c.id==t_address.c.user_id)
select([...], from_obj=j)