时间:2021-05-22
一.F对象:
作用:用于处理类属性(即model的某个列数据),类属性之间的比较。
使用之前需要先导入:
from django.db.models import F
例1:查询图书阅读量大于评论量图书信息。
BookInfo.objects.filter(bread__gt=F('bcomment'))
**例2:**查询图书 阅读量大于2倍评论 量图书信息。
BookInfo.objects.filter(bread__gt=F('bcomment')*2)
二.Q对象:
作用:用于查询时条件之间的逻辑关系。not and or,可以对Q对象进行& | ~操作。
使用之前需要先导入:
from django.db.models import Q
例1: 查询id大于3且阅读量大于30的图书的信息。
写法1:BookInfo.objects.filter(id__gt=3,bread__gt=30)
写法2:BookInfo.objects.filter(Q(id__gt=3)&Q(bread__gt=30))
例2:查询id大于3或者阅读量大于30的图书的信息。
BookInfo.objects.filter(Q(id__gt=3)|Q(bread__gt=30))
例3:查询id不等于3图书的信息。
BookInfo.objects.filter(~Q(id=3))
三.聚合函数:
作用:对查询结果进行聚合操作。
sum count avg max min
1. aggregate:
调用这个函数来使用聚合。 返回值是一个字典
使用前需先导入聚合类:
from django.db.models import Sum,Count,Max,Min,Avg
例1:查询所有图书的数目。
BookInfo.objects.all().aggregate(Count('id'))
例2:查询所有图书阅读量的总和。
BookInfo.objects.all().aggregate(Sum(‘bread'))
2.count函数: 返回值是一个数字
作用:统计满足条件数据的数目。
**例1:**统计所有图书的数目。
BookInfo.objects.count()
**例2:**统计id大于3的所有图书的数目。
BookInfo.objects.filter(id__gt=3).count()
总结:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
支持聚合函数的方法:提到聚合函数,首先我们要知道的就是这些聚合函数是不能在django中单独使用的,要想在django中使用这些聚合函数,就必须把这些聚合函数放
F()函数F()函数的导入fromdjango.db.modelsimportF为什么要使用F()函数?一个F()对象代表了一个model的字段值或注释
当Django的内置权限无法满足需求的时候就自己扩展吧~背景介绍overmind项目使用了Django内置的权限系统,Django内置权限系统基于model层做
1、django的model转json对象。1.1、单个modle转换,返回json对象:sqlOrder=get_object_or_404(SqlOrder
讲解还是以示例代码搭配注释的形式,这里做个小目录:JS代码预解析原理(包括三个段落);函数相关(包括函数传参,带参数函数的调用方式,闭包);面向对象(包括对象创