Django相当于SQL不在

时间:2012-01-25 13:29:40

标签: django django-orm

我有一个非常简单的查询:select * from tbl1 where title not in('asdasd', 'asdasd')

如何将其转换为Django?这就像我想要的相反:Table.objects.filter(title__in=myListOfTitles)

3 个答案:

答案 0 :(得分:87)

尝试使用exclude

Table.objects.exclude(title__in=myListOfTitles)

答案 1 :(得分:14)

Table.objects.exclude(title__in=myListOfTitles)

答案 2 :(得分:11)

(这个帖子很旧,但仍然可以用谷歌搜索)

您可以将 models.Q 与“~”一起使用,如下所示:

Table.objects.filter(~Q(title__in=myListOfTitles))

当您有多个条件时,此方法特别有用。