小编Pra*_*nsr的帖子

sqlalchemy - 加入包含2个条件的子表

如何在连接2个表时向ON子句添加2个条件.我有3个三层表,每个表都有删除标志.我必须在单个查询中加入所有这些表,并根据已删除的标志进行过滤.目前,条件被添加到查询的where子句中,该子句不会过滤已删除的记录.它需要添加到ON子句中.请建议.

我目前的查询如下:

result = session.query(Host).filter(and_(Host.id.in_(ids), Host.deleted == False)).\
    join(Switch).filter(Switch.deleted == False).\
    join(Port).filter(Port.deleted == False).\
    options(joinedload('switches')).\
    options(joinedload('ports')).\
    all()
Run Code Online (Sandbox Code Playgroud)

谢谢

python sqlalchemy

17
推荐指数
3
解决办法
2万
查看次数

标签 统计

python ×1

sqlalchemy ×1