The friendliest way
to learn SQL.
A real SQLite database in your browser. 31 hand-crafted exercises. Hints when you're stuck and immediate feedback the moment your query is right.
SELECT name, num_books_read
FROM family_members
WHERE num_books_read >= 180;
| name | num_books_read |
|---|---|
| Dave | 200 |
| Mary | 180 |
Ready to query a real database?
SQL Easy is built by the team behind Beekeeper Studio - the free, open source SQL editor and database manager for MySQL, Postgres, SQLite, SQL Server, and more.
31 exercises. Real SQLite. Zero fluff.
Start at lesson 01 and the rest unfolds, or skip ahead to a topic you need.
Read it. Write it. Run it.
WHERE … Greater than or equal
SQL accepts inequality symbols like >= and <=. Return all rows in family_members where num_books_read >= 180.
SELECT * FROM family_members WHERE num_books_read >= 180;
People who don't hate SQL anymore.
"I tried six SQL courses. This is the only one I finished, probably because there was nothing to finish, just exercises that got harder."
"My CS class spent two weeks on JOINs. I figured them out here in 40 minutes because I could actually try things and break them."
"Running SQL in the browser made it click. No setup, no Docker, just type and run. Perfect for someone teaching themselves."
Learn SQL once. Use it every day.
SQL is the most boring superpower in tech. It is forty years old, painfully unhip, and quietly the single most useful skill a person who works with data can have. Marketers use SQL. Product managers use SQL. Engineers use SQL. Even some lawyers use SQL.
Learning SQL means you stop waiting on someone else to pull a number for you. Want to know how many users signed up last week, and how many came back the week after? That is a query. Want to figure out which products are selling and which are sitting in the warehouse collecting dust? That is also a query. SQL turns "I have a question about the data" into "I have an answer."
What is SQL, exactly?
SQL stands for Structured Query Language. It is the standard way to talk to relational databases: Postgres, MySQL, SQLite, SQL Server, Oracle, BigQuery, Snowflake, and dozens more. With a handful of well-placed commands you can insert new rows, update existing ones, delete things you no longer want, and (most of the time) select the data you need.
SQL is declarative. You tell the database what you want, and the database figures out how to fetch it. That is part of what makes it pleasant: you describe the shape of the answer, not the steps to get there.
Who is SQL for?
- Beginners with zero programming experience. SQL is one of the gentlest first languages there is. The vocabulary is small, the feedback loop is fast, and the results are tangible.
- Developers who want to stop pasting "how do I do a left join" into Stack Overflow at 2am.
- Data analysts and scientists who already write Python or R but feel uncertain when they have to query the warehouse.
- Career switchers trying to break into analytics, data engineering, or data-adjacent product roles.
- Anyone curious about the database that secretly runs the app they use all day.
How long does it take to learn SQL?
Less than you would guess. The basics (SELECT, WHERE, ORDER BY, the aggregate functions) take a couple of evenings. JOINs take a couple more. After that it is mostly pattern recognition: you will hit the same shapes of problem over and over. By the time you finish the 31 exercises on this site you will know enough to be useful in a real codebase.
How to learn SQL the fast way
The way to learn SQL is to write SQL. You cannot watch your way to fluency. Reading explanations is fine, but the moment you sit down at a real database, the words evaporate. So we built this site to do the opposite: every lesson is a tiny, real database (running in your browser, no signup, no install) and a small question. You read the question, you write the query, you run it, you see the rows. Wrong? Tweak it. Try again. The hint button is there if you get stuck.
That is it. That is the whole pedagogy. Repeat the loop 31 times and you will be the person on your team who actually understands what GROUP BY does.
What SQL commands will you learn?
The full catalogue of moves a working analyst or developer reaches for every day:
- SELECT reads data, with column lists, DISTINCT, AS aliases, and CASE expressions.
- WHERE filters rows: equality, inequality, AND, OR, IN, BETWEEN, LIKE, IS NULL.
- ORDER BY and LIMIT sort and paginate.
- Aggregates: COUNT, SUM, AVG, MAX, MIN, plus GROUP BY and HAVING.
- JOIN, LEFT JOIN, self-joins, table and column aliases.
- String and logic functions: SUBSTR, COALESCE, CASE WHEN.
- INSERT, UPDATE, DELETE, CREATE TABLE, DROP TABLE at the command-reference level.
Common questions
Are SQL keywords case-sensitive?
The keywords (SELECT, FROM, WHERE) are not case-sensitive. We write them in caps so they stand out from your column names. Table and column names can be case-sensitive depending on the database, so play it safe and use lowercase identifiers.
Which SQL flavor does this site teach?
SQLite, because it compiles to WebAssembly and runs in your browser. The good news: 95% of what you learn here is identical in Postgres, MySQL, and SQL Server. The bits that differ (date functions, window function syntax, vendor-specific extensions) are easy to pick up once the fundamentals are solid.
Will SQL ever become obsolete?
Not in our lifetimes. SQL has been quietly winning every "next thing" debate for forty years. NoSQL, NewSQL, document stores, graph databases: all useful, all niche, none of them displaced relational SQL as the default. Even data warehouses for AI workloads still ship a SQL interface as the primary way you ask questions.
Why is this site free?
Read our about page. Short version: more people knowing SQL is good for the world, and we make our money on a database GUI, not on courses.
From learning SQL to shipping with it
Once you've nailed the syntax, you'll need a real SQL editor. Beekeeper Studio is the open source SQL editor developers love. Free, cross-platform, every major database.
Download Beekeeper Studio →