【发布时间】:2019-09-16 21:03:00
【问题描述】:
不运行子查询。有没有办法使用 sqlalchemy 限制查询中特定连接的结果,以便查询中的任何后续连接只连接这些结果?比如我想要第一个join的前5个结果,然后在第一个结果上join第二个表。
我尝试在中间坚持限制,希望 ORM 能理解,但这不起作用
result = t1.query.filter_by(
field1="something"
).join(
t2, t1.id == t2.other_id
).limit(5).join(
t3, t2.id == t3.other_id
).add_columns(
t1.title
).all()
这可能是一个一般性的 SQL 问题,因为我是 SQL 新手,不知道是否可以在没有子查询的情况下执行此操作。
【问题讨论】:
-
为什么要避免使用子查询?
标签: python sql sqlalchemy