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

book
Aggregations

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.

python
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.

python
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.

python
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?

Select the correct answer

question mark

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

Select the correct answer

question mark

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

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 5. Kapitel 3

Spørg AI

expand
ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

some-alt