Mastery system · free access · 3 tracksSQL Mastery Hub A structured learning command center for building real SQL skills. Follow the roadmap, complete the skill checklist, and practice with challenges calibrated to your level.
Learning Tracks Follow in order for best results
01 Beginner ~~2 hrs
Foundations Sprint Column selection, filtering, sorting, aliases, LIMIT, and confidence with result-set shape.
Open track → Skills you'll gain
✓ Write SELECT queries from scratch✓ Filter with WHERE, AND, OR, NOT✓ Sort and limit result sets✓ Alias tables and columns clearlyCourses included
SQL Fundamentals Filtering & Logic
02 Builds on: Foundations Sprint
Intermediate ~~3 hrs
Join Mastery Read ER patterns, choose join direction, aggregate before joining, and prevent row multiplication.
Open track → Skills you'll gain
✓ INNER, LEFT, RIGHT, FULL OUTER JOIN✓ Recognise one-to-many cardinality✓ Join 3+ tables safely✓ Pre-aggregate to avoid row explosionCourses included
JOINs Aggregations
03 Builds on: Join Mastery
Advanced ~~4 hrs
Analyst Performance CTEs, window functions, layered business logic, and query readability at production quality.
Open track → Skills you'll gain
✓ Build multi-stage CTEs✓ RANK, ROW_NUMBER, DENSE_RANK✓ Running totals and LAG/LEAD✓ Write queries anyone can maintainCourses included
Subqueries & CTEs Window Functions
SQL Skills Checklist Use this as a self-assessment. If you can write a correct query for each skill, you know it. If you're unsure, that's where to focus next.
Core fundamentals
Write a SELECT with specific columns Filter rows with WHERE conditions Sort results with ORDER BY Limit rows with LIMIT / OFFSET Use DISTINCT to remove duplicates Alias columns and tablesAggregation & grouping
COUNT, SUM, AVG, MIN, MAX Group rows with GROUP BY Filter groups with HAVING Understand NULL behavior in aggregates Use COUNT(DISTINCT col)Joins & relationships
INNER, LEFT, RIGHT, FULL OUTER JOIN Join on foreign key relationships Handle one-to-many without duplication Join 3+ tables in a single query Use CROSS JOIN deliberatelySubqueries & CTEs
Write a scalar subquery Use EXISTS and NOT EXISTS Build a CTE with WITH Chain multiple CTEs Use a recursive CTE for hierarchiesWindow functions
ROW_NUMBER, RANK, DENSE_RANK PARTITION BY and ORDER BY in OVER() Running totals with SUM OVER LAG and LEAD for period comparison NTILE for bucket segmentation FIRST_VALUE and LAST_VALUEThe Mastery Loop Strong SQL performers follow this cycle every time they write a non-trivial query. Internalise it and your accuracy and speed will both improve.
1
Read schema first
Know keys, nullability, and grain before writing joins. Run SELECT * FROM your_table LIMIT 10 to understand shape.
2
Build in checkpoints
Run each CTE or clause incrementally. Verify row counts at each step before composing the final query.
3
Verify business correctness
Spot-check one customer, product, or department manually. Your query's result for that row should match your manual calculation.
4
Explain your query
If you can describe what the query does in plain English, you'll be able to maintain and debug it six months from now.
Recommended Challenges Open the playground and filter by difficulty. Here are representative challenges at each level to guide where to start.
Top earners All departments All products by priceMedium — build confidence Open → Avg salary by department Revenue by category Frequent buyers Salary rank within department Best-seller per category Doctor completion rateExtreme — interview-ready Open → RFM customer segmentation Salary quartile deviation Hospital performance dashboardBuilt from learner feedback
What learners asked for, now built in Thea
“I wanted clear tasks I could complete in sequence, then repeat with confidence. Joins were still the hardest part.”
Sarita
“I needed logical reasoning and plain-language explanations for each command so I could remember it long term.”
Transparent tasks Every lesson and challenge has explicit goals, expected output shape, and practical context.
Reasoning-first explanations We teach the logic behind SQL clauses, not just syntax, so learners can apply patterns in real work.
Repeatable completion loops Learners can re-run exercises, guided hints, and challenge levels to reinforce skills quickly.