django orm 查询语句

Model.objects.all()       # 获取所有对象的QuerySet
Model.objects.filter()    # 获取满足条件的对象的QuerySet
Model.objects.exclude()   # 获取不满足条件的对象的QuerySet
Model.objects.get()       # 获取单个符合条件的对象的QuerySet

Person.objects.all().extra(select={'is_adult': "age > 18"})

querySet.distinct()  去重复
__exact        精确等于 like 'aaa'
 __iexact    精确等于 忽略大小写 ilike 'aaa'
 __contains    包含 like '%aaa%'
 __icontains    包含 忽略大小写 ilike '%aaa%',但是对于sqlite来说,contains的作用效果等同于icontains。
__gt    大于
__gte    大于等于
__lt    小于
__lte    小于等于
__in     存在于一个list范围内
__startswith   以...开头
__istartswith   以...开头 忽略大小写
__endswith     以...结尾
__iendswith    以...结尾,忽略大小写
__range    在...范围内
__year       日期字段的年份
__month    日期字段的月份
__day        日期字段的日
__isnull=True/False
    原文作者:Prasanta
    原文地址: https://segmentfault.com/a/1190000006742608
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞