【发布时间】:2019-03-13 00:08:09
【问题描述】:
我想将一个类对象映射到一个表,该表是两个表之间的连接,并且一个表中的所有列和连接表中的一列被选中(映射)。
join_table = join(table1, table2, tabl1.c.description==table2.c.description)
model_table_join= select([table1, table2.c.description]).select_from(join_table).alias()
我这样做对吗?
【问题讨论】:
-
您的意思是您正在实施Mapping a Class against Multiple Tables?那你就不用创建
model_table_join了,join_table对象就够了。 -
@Martijn Pieters 我的问题是两个表都有一些名称相同的字段,我只想包含 table2 中的一列。
-
如果我这样做:
join(table1, table2.c.description, table1.c.number==table2.c.number)我收到 FROM 表达式预期错误。 -
联接需要两个表,而不是一列。
select_from方法可能是正确的方向,但我不能让复合键工作。老实说,我会完全避免这种情况,只添加一个关系和一个代理列的混合属性。 -
我该怎么做呢?
标签: python join sqlalchemy