Hi,

I'm trying to do INNER JOIN with aliased table and I'm experiencing
problem.
Here is my example:

Domain = db.domain
Client = db.client
Manager = db.contact.with_alias('manager')
sql = db((Domain.id==1)&
        (Client.id==Domain.client_id)&
        (Manager.id==Client.manager_id))._select(
        Domain.name, Client.name, Manager.name)
print sql

Result:
SELECT  domain.name, client.name, contact.name FROM domain, client,
contact WHERE (((domain.id = 1) AND (client.id = domain.client_id))
AND (contact.id = client.manager_id));

It works but it doesn't use the alias name for the table contact. Thus
the resulting dict() doesn't contains the key "manager" but the key
"contact".

Thanks again for your investigations.

Reply via email to