Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ Aggregations | Complex Queries
Django ORM Ninja: Advanced Techniques for Developers

bookAggregations

メニューを表示するにはスワイプしてください

Do you remember that aggregations in SQL are used to compute a single result from a set of input values. Let's remind some common aggregation functions: COUNT, SUM, AVG, MAX, MIN.

At the same time, Aggregation in Django ORM is a powerful tool to perform calculations over query sets, enabling you to summarize or analyze data efficiently. It allows for operations like counting, averaging, summing, etc., across a set of records.

Basic Aggregation Examples

This query counts how many books each author has written.

from django.db.models import Count
author_book_count = Author.objects.annotate(num_books=Count("books"))

Complex Aggregation

Finds the latest publication date for each author.

from django.db.models import Max
latest_book_per_author = Author.objects.annotate(latest_publication=Max("books__publication_date"))

Aggregation with Filters

Aggregates the total pages of all books in the "Fantasy" genre.

total_pages_fantasy = Book.objects.filter(genre__name="fantasy").aggregate(Sum("pages"))

1. What is the primary use of aggregation functions in SQL?

2. What does the following Django ORM query do? Author.objects.annotate(latest_publication=Max('books__publication_date'))

3. Which Django ORM query is used to aggregate the total pages of all books in the 'Fantasy' genre?

question mark

What is the primary use of aggregation functions in SQL?

正しい答えを選んでください

question mark

What does the following Django ORM query do? Author.objects.annotate(latest_publication=Max('books__publication_date'))

正しい答えを選んでください

question mark

Which Django ORM query is used to aggregate the total pages of all books in the 'Fantasy' genre?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 5.  3

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 5.  3
some-alt