您需要创建子查询,然后从这些子查询中进行选择:
from sqlalchemy import union_allq1 = Session.query(..).filter(..).filter(..).order_by(..).limit(..).subquery()q2 = Session.query(..).filter(..).filter(..).order_by(..).limit(..).subquery()q = Session.query(..).select_entity_from(union_all(q1.select(), q2.select()).order_by(..).all()
该
.subquery()方法返回一个Alias对象,该对象不
union_all直接支持查询。因此,相反,我们需要构建一个
select_entity_from()结构,而不是传入
sqlalchemy.sql.expression.union_all()
函数
结果,因此您仍将结果映射到正确的对象。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)