聚合函数 名称 作用 Max() 最大值 Min() 最小值 Sum() 求和 Count() 计数 Avg() 平均值 关键字: aggregate 聚合查询通常都是配合分组一起使用的 关于数据库的模块 基本上都在django.db.models里面 如果上述没有那么应该在django.db里面…
聚合 aggregate()是QuerySet 的一个终止子句,意思是说,它返回一个包含一些键值对的字典. 键的名称是聚合值的标识符,值是计算出来的聚合值.键的名称是按照字段和聚合函数的名称自动生成出来的. 用到的内置函数: from app01 import models from django.db.models import Max, Min, Sum, Avg, Count ret = models.Book.objects.aggregate(max=Max('price')) # {…
首先回顾sql中聚合和分组的概念: 如果没有分组,会把整张表作为一个大组,查询字段必须是聚合结果:如果有分组,分组之后,必须要使用聚合的结果作为having的条件. 聚合查询 聚合:aggregate(*args, **kwargs) 规则: 1.可以同时对多个字段进行聚合处理: 2.是QuerySet对象方法: 3.方法返回值为字典类型 aggregate()是QuerySet 的一个终止子句,意思是说,它返回一个包含一些键值对的字典.键的名称是聚合值的标识符,值是计算出来的聚合值.键的名称是…
目录 一.聚合查询aggregate 二.分组查询annotate 三.F与Q查询 (一)F查询 1. 查询库存数大于卖出数的书籍 2. 将所有书的价格上涨100块 3.将所有书的名称后面全部加上 "爆款" 后缀(操作字符串数据需要借助于Concat方法) (二)Q查询 (1)正常查询 (2)按照字符串查询 四.ORM字段及参数 (一)常用字段 (二)通用参数 (1)null (2)unique (3)db_index (4)default (三)自定义char字段 五.ORM中的事务…
目录 一.聚合函数 1. 基础语法 2. Max Min Sum Avg Count用法 (1) Max()/Min() (2)Avg() (3)Count() (4)聚合函数联用 二.分组查询 1. 分组查询实例 三.F与Q查询 1. F查询实例 2. Q查询实例 四.orm字段及其参数 1. 常见的orm字段 2. 自定义字段 3. 外键字段 4. 字段中的常用属性 五.orm中的事务操作 1. 开启/关闭事务 一.聚合函数 聚合函数单独使用意义不大,一般与分组联用 没有分组其实默认整体就是…
    一.聚合函数    from django.db.models import Avg,Sum,Max,Min,Count,F,Q   #导入    # .查询图书的总价,平均价,最大价,最小价    # ret=Books.objects.aggregate(Avg('price'),Min('price'),Max('price'),Sum('price'))    # print(ret)    二.分组查询:以谁group by 就以谁为基表    # 查询名字叫lqz作者书的总价…
目录 一.orm补充查询 聚合查询 1-1 分组查询 1-2 F与Q查询 1-3 二. 字段及其参数 常用字段 AutoField IntegerField CharField DateField DateTimeField 字段集合 字段参数 null unique db_index default DateField和DateTimeField auto_now_add auto_now 关系字段 to to_field on_delete db_constraint 一.orm补充查询 聚…
聚合查询 聚合对查询的结果进行一步的计算加工. aggregate()是QuerySet 的一个终止子句 ,他的作用是,返回一个包含一些键值对的字典.键的名称是聚合值的标识符,值是计算出来的聚合值.键的名称是按照字段和聚合函数的名称自动生成出来的. 用到的内置函数: from django.db.models import Avg, Sum, Max, Min, Count [示例] # 查询价格最高的书和价格最低的书 ret = models.Book.objects.all().aggreg…
F查询 from django.db.models import F,Q # 当查询条件来自于数据库的某个字段,这个时候就必须使用F # 查询卖出数大于库存数的商品 res = models.Product.objects.filter(maichu__gt=F('kucun')) # 将所有商品的价格提高100块 models.Product.objects.update(price=F('price')+100) # 将所有商品的名字后面加一个爆款后缀 from django.db.mode…
一.外键自关联(一对多) 1.建表 # 评论表 class Comment(models.Model): id = models.AutoField(primary_key=True) content = models.CharField(max_length=255) push_time = models.DateTimeField(auto_now_add=True) # 父评论:自关联,一个评论可以没有父评论所以null=True pcomment = models.ForeignKey(…