#1 Data Analytics Program in India
₹2,499₹1,499Enroll Now
Step 7
3 min read

Aggregate Queries

Combine multiple aggregate functions in one query.

What is an Aggregate Query?

An aggregate query uses multiple functions together to get complete statistics in ONE query.

Instead of running 4 separate queries, run ONE:

SELECT grade, COUNT(*) AS total, MIN(age) AS youngest, MAX(age) AS oldest, AVG(age) AS avg_age FROM students GROUP BY grade;

This single query tells you:

  • COUNT → How many students per grade
  • MIN → Youngest age in each grade
  • MAX → Oldest age in each grade
  • AVG → Average age per grade

How It Works

Complete Query Pattern

Use WHERE + GROUP BY + HAVING together:

SELECT grade, COUNT(*) AS count, AVG(age) AS avg FROM students WHERE age >= 19 GROUP BY grade HAVING COUNT(*) > 1;

Order matters:

  1. WHERE → Filter rows first (age >= 19)
  2. GROUP BY → Group filtered rows
  3. HAVING → Filter groups (count > 1)

Quick Summary

  • SELECT → Pick columns + aggregates
  • WHERE → Filter rows before grouping
  • GROUP BY → Make groups
  • HAVING → Filter groups after

Finished this topic?

Mark it complete to track your progress and maintain your streak!