【发布时间】:2019-03-09 13:25:26
【问题描述】:
我不明白如何使用交叉联接来连接两个表。 Earler,在 sqlalchemy 版本 1.1.4 我这样做:
A = Table1.sa
B = Table2.sa
my_query = A.query().join(B, literal(True))
但更新到 1.3 版后,它会引发异常:
sqlalchemy.exc.InvalidRequestError: 无法确定从哪个 FROM 子句加入,有多个 FROM 可以加入此实体。尝试添加明确的 ON 子句来帮助解决歧义。
我明白这意味着我必须这样做:
my_query = A.query().join(B, A.fireign_key_id = B.id)
但是表 A 没有表 B 的外键。
如何使用交叉连接和没有外键连接两个表? 谢谢。
【问题讨论】:
-
请添加模型
A和B或Table1.sa等的定义。
标签: python sqlalchemy