I've just finished learning the basics of SQL like queries and joins, and I'm eager to start practicing more advanced skills. I've seen some SQL questions on LeetCode, but friends mentioned that it might not be sufficient for true mastery. I'd love to know if they're right and hear any suggestions for other sites or methods to really get good at SQL that I could even highlight on my resume for interviews.
6 Answers
During the pandemic, I started a little project analyzing pandemic data that was available online. It's not super polished, but it taught me a lot about using SQL with real datasets. Finding a dataset that intrigues you to work on can lead to some interesting insights and practice.
If you're open to exploring Oracle SQL, check out devgym.oracle.com. It's got some great resources specifically for practicing that variant, which can be quite different from others.
Doing a hands-on project is a fantastic way to learn! Set up a mock database with tools like SSMS or MySQL Workbench. You can even get ideas for projects from ChatGPT. Once you’re comfortable with basics, dive into real datasets from Kaggle or government resources. It’s much more engaging than solving random practice problems, plus you'll learn how to deal with real-world data issues.
For practical experience, I recommend building your own project. I set up a Raspberry Pi with PostgreSQL to run a finance app for managing my expenses, which replaced an old Excel sheet I had. Working on a real app and querying a database for data is incredibly fun and educational, a lot more rewarding than just grinding through LeetCode questions.
Why not spin up a Docker container for PostgreSQL? It’s a quick way to dive into something hands-on. Then you can use it as a backend for various projects to experiment and play around with the database.
Check out tools like SQL Fiddle or db fiddle! A great part of your practice is creating tables with dummy data, which you’ll need for performance analysis later on. You can also install databases like PostgreSQL, MySQL, or MSSQL on your computer. It lets you run queries freely, set up and tear down databases, and explore configurations. Understanding security and performance tweaks can give you insights into optimizing database setups, even if you don't directly make those choices later.

Totally agree! Working with actual datasets will teach you way more about data quality and integrity. You’ll face challenges that can’t be solved with textbook knowledge alone.