SpeedQL — Custom SQL Exercises
Learn SQL. Practice SQL. Level Up.
Custom exercises · no timer · with hints
Custom SQL exercises: choose your topics
In this mode you decide what to practice: tick one or more SQL topics, and SpeedQL only gives you questions that use them. No timer: take the time to understand, and a counter shows your average time per question.
- 376 hand-written questions
- 100 question templates with variables
- 16 SQL topics
- 12 data themes
- 3 game modes
- 0 sign-up
How do custom exercises work?
- Tick the topics you want to practice, for example GROUP BY and HAVING.
- Each question uses at least one ticked topic, and sometimes simpler ones (an exercise on HAVING always has a GROUP BY).
- Stuck? The Hint button first gives the topic to use, then the structure of the query, never the values.
- Click “Skip” to change question, and “Finish” to see your summary: duration, answers, average time.
Practice SQL topic by topic
Each link opens the exercises with the topic already ticked:
- SQL exercises: SELECT, aliases, DISTINCT (4 questions)
- SQL exercises: WHERE (filters) (31 questions)
- SQL exercises: ORDER BY, LIMIT (7 questions)
- SQL exercises: COUNT, SUM, AVG, MIN, MAX (7 questions)
- SQL exercises: GROUP BY (27 questions)
- SQL exercises: JOIN (60 questions)
- SQL exercises: HAVING (20 questions)
- SQL exercises: Subqueries (34 questions)
- SQL exercises: CASE (25 questions)
- SQL exercises: NULL, COALESCE (11 questions)
- SQL exercises: UNION, INTERSECT, EXCEPT (13 questions)
- SQL exercises: Text and dates (24 questions)
- SQL exercises: CTEs (WITH) (31 questions)
- SQL exercises: EXISTS (22 questions)
- SQL exercises: Window functions (OVER) (111 questions)
- SQL exercises: Recursive CTEs (18 questions)
The other SpeedQL modes
Timed game
You start with 1 minute; every correct answer adds 1 to your score and 30 seconds to the clock. The level goes up every 5 correct answers, with no limit. From level 5, a mistake costs 5 s, and “Skip” costs 10 s. Start a timed SQL game.
Daily SQL exercise
One question assigned to each day of the year, the same for everyone, and a day streak to keep going. Take on the daily SQL exercise.
Frequently asked questions about custom SQL exercises
How many exercises are there per SQL topic?
From 4 questions for SELECT to 111 for window functions. The topics with the most questions are window functions (111), JOIN (60), subqueries (34), and WHERE and CTEs (31 each).
Are the custom exercises timed?
No. There is no timer: a counter only shows your average time per question, and the “Finish” button shows your summary (duration, answers, average time).
How does the Hint button work?
It helps in two steps: first the topic to use, then the structure of the query. It never gives away the expected values.
Why does a question use a topic I did not tick?
Every question uses at least one ticked topic, but it can also need simpler ones: an exercise on HAVING always contains a GROUP BY.
Which topic should a SQL beginner start with?
Start with SELECT, WHERE and ORDER BY, before aggregates (COUNT, SUM…) and GROUP BY; joins, subqueries and window functions come next. The SQL cheat sheet presents the 16 topics in that order.