首页 > 解决方案 > 从没有直接关系的多个表中过滤 Django 模型

问题描述

嘿,我有两个表“Book”和“Author”,它们之间没有直接关系,但我需要所有 Book 记录的 author_id 都在表 Author 的 ids 列表中,根据 LIKE 过滤操作员。

下面的 SQL 语句正是我想用 django 过滤选项实现的,但它似乎不起作用。我读了很多关于 select_related 和 prefetch_related 但它们似乎并没有解决我的问题,因为这些表彼此之间没有外键:

SELECT * FROM Book b 
WHERE b.author_id 
IN 
(SELECT id FROM Author WHERE country LIKE "%er%")        // this will give back a list of ids

标签: sqldjangodjango-modelsorm

解决方案


推荐阅读