Python,SqlAlchemy:多对多关系,找到与您的关系

2024-05-19 09:48:24 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有两种类型的对象,Movies和{},它们由many to many relationship中的ORM关联,关联表由secondary参数指示给relationship(),我希望能够找到没有Tags的所有{}?我要运行什么样的查询才能达到这种效果?在


Tags: to对象类型参数tagsormmoviesmany
2条回答

如果TagId是Movies对象的一部分,这将是检查Movies上的TagId是否为null的简单情况:

session.query(Movies).filter(Movies.TagId == None).all()   

但是您的多对多注释建议使用MoviesTags链接实体,因此它更为复杂,涉及到使用左外部连接链接到MoviesTags。在

a good guide to writing and debugging类似的SQL查询。你基本上想得到的结果是:

^{pr2}$

使用any(),这对此类查询特别有用。在

query = session.query(Movies).filter(~Movies.tags.any())

这里tagsTags的多对多关系名称。

相关问题 更多 >

    热门问题