新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Django中Aggregation聚合是什么-創(chuàng)新互聯(lián)
創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!
小編給大家分享一下Django中Aggregation聚合是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
Django 的 filter、exclude 等方法使得對數(shù)據(jù)庫的查詢很方便了。這在數(shù)據(jù)量較小的時候還不錯,但如果數(shù)據(jù)量很大,或者查詢條件比較復雜,那么查詢效率就會很低。
提高數(shù)據(jù)庫查詢效率可以通過原生 SQL 語句來實現(xiàn),但是它的缺點就是需要開發(fā)者熟練掌握 SQL。倘若查詢條件是動態(tài)變化的,則編寫 SQL 會更加困難。
對于以便捷著稱的 Django,怎么能忍受這樣的事。于是就有了 Aggregation聚合 。
聚合最好的例子就是官網(wǎng)給的案例了:
# models.py from django.db import models class Author(models.Model): name = models.CharField(max_length=100) age = models.IntegerField() class Publisher(models.Model): name = models.CharField(max_length=300) class Book(models.Model): name = models.CharField(max_length=300) pages = models.IntegerField() price = models.DecimalField(max_digits=10, decimal_places=2) rating = models.FloatField() authors = models.ManyToManyField(Author) publisher = models.ForeignKey(Publisher, on_delete=models.CASCADE) pubdate = models.DateField() class Store(models.Model): name = models.CharField(max_length=300) books = models.ManyToManyField(Book)
文章名稱:Django中Aggregation聚合是什么-創(chuàng)新互聯(lián)
文章位置:http://www.dlmjj.cn/article/cedgcp.html