070:Django数据库ORM聚合函数详解-准备工作

Posted zheng-weimin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了070:Django数据库ORM聚合函数详解-准备工作相关的知识,希望对你有一定的参考价值。

ORM聚合函数详解-准备工作:

  如果你用原生SQL,则可以使用聚合函数来提取数据。比如提取某个商品销售的数量,那么可以使用count,如果想要知道商品销售的平均价格,那么可以使用avg。聚合函数是通过aggregate方法来实现的。在讲解这些聚合函数的用法的时候,都是基于以下的模型对象来实现的。

创建如下models:

from django.db import models

class Author(models.Model):
    """作者模型"""
    name = models.CharField(max_length=100)
    age = models.IntegerField()
    email = models.EmailField()

    class Meta:
        db_table = author


 class Publisher(models.Model):
     """出版社模型"""
     name = models.CharField(max_length=300)

     class Meta:
         db_table = publisher


 class Book(models.Model):
     """图书模型"""
     name = models.CharField(max_length=300)
     pages = models.IntegerField()
     price = models.FloatField()
     rating = models.FloatField()
     author = models.ForeignKey(Author,on_delete=models.CASCADE)
     publisher = models.ForeignKey(Publisher, on_delete=models.CASCADE)

     class Meta:
         db_table = book


 class BookOrder(models.Model):
     """图书订单模型"""
     book = models.ForeignKey("Book",on_delete=models.CASCADE)
     price = models.FloatField()

     class Meta:
         db_table = book_order

并创建一个front的app;

以上是关于070:Django数据库ORM聚合函数详解-准备工作的主要内容,如果未能解决你的问题,请参考以下文章

075: Django数据库ORM聚合函数详解-Sum

071:Django数据库ORM聚合函数详解-Avg

复杂的 Django ORM 注释和聚合

$Django 聚合函数分组查询F,Q查询orm字段以及参数

Django聚合查询 orm字段及属性

Django ORM数据库查询操作