如何在sqlalchemy会话查询中加入?

时间:2011-07-05 09:57:04

标签: python orm sqlalchemy

我需要在sqlalchemy中找到这个查询的等价物。

SELECT u.user_id, u.user_name, c.country FROM
table_user u , table_country c WHERE u.user_email = 'abc@def.com'

我在下面尝试了以下代码:

session.query(User).join(Country.country).filter(User.user_email == 'abc@def.com').first()

这给了我以下错误:

  AttributeError: 'ColumnProperty' object has no attribute 'mapper'

任何人都可以使用映射到新类对象的表来提供连接查询的示例吗?

1 个答案:

答案 0 :(得分:20)

尝试此操作,假设您的用户映射器与国家/地区配置有关系。

user, country = session.query(User, Country.country).join(Country).filter(User.user_email == 'abc@def.com').first()