模型类的objects函数

from boktete.models improt BookInfo

get函数:

功能:返回表中满足条件的一条且只能有一条数据

返回值:返回值是一个模型类对象

说明:参数中写查询条件

    1)如果查询多条书记,则抛异常MultipleObjectsReturned。

    2)查询不到数据,则抛异常:DoesNotExist

b= BookInfo.objects.get(id=1)

 

all函数:

功能:返回模型类对应表格中所有数据

返回值:QuerySet类型

说明:查询集

 

filter函数:

功能:返回满足条件的数据

返回值:QuerySet类型

说明:参数写查询条件

 

exclude函数:

功能:返回不满足条件的数据

返回值:QuerySet类型

说明:参数写查询条件

order_by函数:

功能:对查询结果进行排序

返回值:QuerySet类型

说明:参数中写根据哪些字段进行排序

 

条件格式:

a)判等 条件名:exact

例:查询编号为1的图书

BookInfo.objects.get(id__exact=1)

BookInfo.objects.get(id=1)

b)模糊查询

例:查询书名包含 ‘传’ 的图书。contains

  BookInfo.objects.filter(btitle__contains='传')

例:查询书名以 ‘部’ 结尾的图书 endswith   开头:startswitch 

  BookInfo.objects.filter(btitle__endswith='部')

c)空查询 isnull

例:查询书名不为空的书名。isnull

  BookInfo.objects.filter(btitle__isnull=False)

d)范围查询 in

例: 查询 id为1或3或5的图书

  BookInfo.objects.filter(id__in=[1,3,5])  

e)比较查询  gt(greate than)大于  lt(less than)小于  gte(equal) 大于等于   lte小于等于

例:查询编号大于3的图书。

  BookInfo.objects.filter(id__gt=3)

f)日期查询

例:查询1980年发表的图书

  BookInfo.objects.filter(bpub_date__year=1980)

  BookInfo.objects.filter(bpub_date__month=5)

例:查询1980年5月1日后发表的图书

  from datetime import date

  BookInfo.objects.filter(bpub_date__gtr=date(1980,5,1))

 

eclude方法示例:

例:查询id不为3的图书信息

  BookInfo.objects.exclude(id=3)

 

order_by方法示例

作用:进行查询结果进行排序

例:查询所有图书的信息,按照id从小到大进行排序

  BookInfo.objects.all().order_by('id')

  对所有图书进行排序时,all()可以省略

  BookInfo.objects.order_by('id')

例:查询所有图书的信息,按照id从大到小进行排序

  BookInfo.objects.all().order_by('-id')

例:把id大于3的图书信息按照阅读量从大到小显示

  BookInfo.objects.filter(id__gt=3).order_by('-bread')

 

posted @ 2020-03-24 09:53  simon羊  阅读(530)  评论(0)    收藏  举报