django数据库操作,查询函数,查询条件,QF对象

本文详细介绍了Django ORM中各种查询函数的使用方法,包括get、all、filter、exclude、orderby等,以及如何使用Q对象和F对象进行复杂条件查询和属性间比较,帮助读者掌握高效的数据操作技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版权声明:未经允许,严禁转载。

1.查询函数

通过 模型类.objetcts属性可以调用如下函数,实现对模型类对应的数据表的查询。

函数名功能返回值说明
get返回表中满足条件的一条且仅有一条数据返回值是一个模型类对象参数中写查询条件,1)如果查询到多条数据则抛出MultiObjectsReturned。2)查询不到数据,则抛出DoesNotExit
all返回模型类中的所有数据返回值是Queryset类型查询集
filter返回满足条件的数据返回值是Queryset类型参数写查询条件
exclude返回不满足条件的数据返回值是Queryset类型参数写查询条件
order by对查询结果进行排序返回值是Queryset类型参数写根据哪些字段进行排序

2.查询条件

a)判等__exact
BookInfo.objects.get(id__exact=1) 可省略__exact不写
b)模糊查询 __contains
例:查询书名中包含‘传’的图书。 BookInfo.objects.filter(btitle__contains=‘传’)
同理的开头结尾用__startwith,__endwith
c)空查询 __isnull(值位True,False)
例:查询书名不为空的图书。BookInfo.objects.filter(id__isnull=False)
d)范围查询__in
例:查询id为1或者3或5的图书。BookInfo.objects.filter(id__in[1,3,5])
e)比较查询 gt(greater than) lt(less than) gte(equal)大于等于 lte小于等于
例:查询编号大于3的图书 BookInfo.objects.filter(id__gt=3)
f)日期查询

3.Q对象

作用:用于查询条件之间的逻辑关系。not , and , or。可以对Q对象进行 ~ & | 的操作。

4.F对象

作用:用于类属性间的比较
使用之前需要导入:from django.db.models import F
例:查询图书阅读量大于评论量的图书信息。
BookInfo.objects.filter(bread__gt=F(‘comment’))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值