django orm 常用查询筛选

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django orm 常用查询筛选相关的知识,希望对你有一定的参考价值。

大于、大于等于

__gt 大于
__gte 大于等于

User.objects.filter(age__gt=10) // 查询年龄大于10岁的用户
User.objects.filter(age__gte=10) // 查询年龄大于等于10岁的用户

小于、小于等于

__lt 小于
__lte 小于等于

User.objects.filter(age__lt=10) // 查询年龄小于10岁的用户
User.objects.filter(age__lte=10) // 查询年龄小于等于10岁的用户

在...范围内

__in

查询年龄在某一范围的用户
User.objects.filter(age__in=[10, 20, 30]) 

模糊查询

__exact 精确等于 like ‘aaa‘
__iexact 精确等于 忽略大小写 ilike ‘aaa‘
__contains 包含 like ‘%aaa%‘
__icontains 包含 忽略大小写 ilike ‘%aaa%‘,但是对于sqlite来说,contains的作用效果等同于icontains。
is null / is not null

是否为空

User.objects.filter(username__isnull=True) // 查询用户名为空的用户
User.objects.filter(username__isnull=False) // 查询用户名不为空的用户

不等于/不包含于

User.objects.filter().excute(age=10) // 查询年龄不为10的用户
User.objects.filter().excute(age__in=[10, 20]) // 查询年龄不为在 [10, 20] 的用户

 

以上是关于django orm 常用查询筛选的主要内容,如果未能解决你的问题,请参考以下文章

django中的orm中怎么对筛选结果去重

Django ORM常用操作

Django ORM相关操作

django的ORM

Django ORM操作

Django ORM操作