Loading…
TechNest
Work with data storage
Explore and get curious
2 steps
Try things, experiment
2 steps
Go deep, master it
2 steps
Explore & Discover
SQL is the language that talks to almost every database on the planet — from Instagram's photo storage to Utah's DMV records. Start by going to SQLZoo.net (free, no account needed) and try the first two interactive tutorials in your browser. You literally type SQL and see results instantly. Then look up what a "relational database" is — Khan Academy has a free video that explains it in about 10 minutes. Next, find something real: search for "Utah open data portal" and look at what kind of data the state publishes publicly. Notice that data is stored in tables with rows and columns, just like a spreadsheet but way more powerful. You're ready for the next step when you can describe what a database table is and explain what SQL is used for in one or two sentences.
Learn the Basics
Now learn the four commands that run 90% of all SQL in the real world: SELECT, FROM, WHERE, and ORDER BY. Head to W3Schools SQL Tutorial (free) and work through the first five lessons — they have a live editor so you can run queries right in the browser. Learn what SELECT * means, how to filter rows with WHERE, and how to sort results with ORDER BY. Then learn COUNT, SUM, and AVG to start doing real math on data. Practice on the SQLZoo "SELECT basics" and "SELECT from World" sections. The goal is to feel comfortable writing a query that answers a real question like "which Utah counties have the most residents?" You're ready for the next step when you can write a SELECT query with a WHERE clause and an ORDER BY without looking at notes.
Build Your First Project
Build your first real database. Download DB Browser for SQLite (free at sqlitebrowser.org) — it's a visual tool that lets you create and manage databases on your own computer without any server setup. Create a database around something you actually care about: your game collection, a list of Utah ski resorts with trail counts and vertical feet, your favorite YouTube channels, or a movie catalog. Design at least two tables and connect them with a foreign key. Write queries that answer five real questions about your data using SELECT, WHERE, and ORDER BY. Import a small CSV file (DB Browser can do this in two clicks) and query it. You're ready for the next step when you've created a working database with two tables, loaded real data into it, and answered five questions using SQL queries.
Experiment & Iterate
Now learn the techniques that make SQL actually powerful. Study JOINs — this is how you connect data from two tables together. Watch "SQL JOINs explained" on YouTube by Socratica or Programming with Mosh (both free). Practice INNER JOIN, LEFT JOIN, and understand when each one applies. Learn GROUP BY so you can do things like count how many movies are in each genre, or find the average rating per category. Add an index to one of your tables and look up why indexes make queries faster. Try writing a subquery — a SELECT inside another SELECT. Update your personal database to use JOINs across both tables. You're ready for the next step when you can write a JOIN query that pulls data from two tables and a GROUP BY query that aggregates results.
Advanced Techniques
Go deeper into how real databases are designed and optimized. Study database normalization — look up First, Second, and Third Normal Form (1NF, 2NF, 3NF) using free resources at Database.guide or GeeksforGeeks. Learn what a primary key, foreign key, and unique constraint actually do to protect your data. Try SQLiteOnline.com or set up a free PostgreSQL instance on Supabase (free tier) — PostgreSQL is what real companies use. Learn window functions like ROW_NUMBER() and RANK() which let you do calculations across rows without collapsing them like GROUP BY does. Look up what a database transaction is and why ACID properties matter. You're ready for the next step when you can normalize a messy table into proper 3NF and write a query using at least one window function.
Final Project Showcase
Build a database project that answers a real question you care about. Find a public dataset — Utah's open data portal, Kaggle (free), or data.gov — download it as a CSV, import it into your database, and write at least ten queries that tell a story. Think: "Which Salt Lake neighborhoods have the most businesses?" or "What years had the most snowfall at Alta?" Write a short data report summarizing what you found — three findings with the SQL queries that proved them. If you want to go further, connect your database to a Python script using the sqlite3 library (free, built into Python) and output your results automatically. Share your project on GitHub. You're ready for the next step when you've completed a real data analysis project, written ten queries, and can present three findings backed by SQL evidence.
Recommended materials and resources for this quest.
Learning SQL by Alan Beaulieu
RequiredThe clearest printed SQL reference for beginners — covers everything from basic SELECT to joins and subqueries with real examples you can run yourself. Way better than random googling.
amazon
$35–45
Data Engineering Notebook / Dot Grid Journal
RequiredUse a dot-grid notebook to sketch out table schemas, draw relationship diagrams, and plan your queries before typing them — database designers call this ERD sketching and it really works.
amazon
$10–16
Head First SQL
A visual, story-driven SQL book with puzzles and activities that makes database concepts stick — great if Learning SQL feels too dense at first.
amazon
$40–55
Some links may be affiliate links. We may earn a small commission at no extra cost to you.