zoukankan      html  css  js  c++  java
  • Django框架之ORM的相关操作(二)

    模型类:

    class Commongity(models.Model):
        id=models.AutoField(primary_key=True)
        name=models.CharField(max_length=20)
        price=models.DecimalField(max_digits=5,decimal_places=2)

    聚合查询

    aggregate()是QuerySet 的一个终止子句,意思是说,它返回一个包含一些键值对的字典。

    键的名称是聚合值的标识符,值是计算出来的聚合值。键的名称是按照字段和聚合函数的名称自动生成出来的。

    聚合查询主要用于计算平均值,最大值,最小值,和,数量

    平均值:Avg

    最大值:Max

    最小值:Min

    和:Sum

    数量:Count

    需要导入平均值,最大值,最小值等模块

    from django.db.models import Avg,Max,Min,Sum,Count

     (1)查询所有物品的平均价格

    # 查询所有物品的平均价格
        # price表示模型类中的字段名
        good = models.Commongity.objects.all().aggregate(Avg('price'))

    (2)查询所有物品的最大的价格

    good = models.Commongity.objects.all().aggregate(Max('price'))

    (3)同理:最小值,和,数量等都是同样的用法

    aggregate()得出的结果是一个字典的类型返回,所以如果不指定键的名称,那么python自动分配名称,如果使用特定的名称,在aggregate(指定的键=Max('price')),如下所示:

    good = models.Commongity.objects.all().aggregate(price_test=Max('price'))

    ===============================================================================

    分组查询,分组查询与聚合查询

    pass

  • 相关阅读:
    UVA 11488 Hyper Prefix Sets (字典树)
    UVALive 3295 Counting Triangles
    POJ 2752 Seek the Name, Seek the Fame (KMP)
    UVA 11584 Partitioning by Palindromes (字符串区间dp)
    UVA 11100 The Trip, 2007 (贪心)
    JXNU暑期选拔赛
    计蒜客---N的-2进制表示
    计蒜客---线段的总长
    计蒜客---最大质因数
    JustOj 2009: P1016 (dp)
  • 原文地址:https://www.cnblogs.com/fjiqiang/p/10927045.html
Copyright © 2011-2022 走看看