Just to toot my own horn - I wrote a book called SQL Practice Problems (available on Amazon), plus I also have an expanded problem set on my website SQLPracticeProblem.com.<p>The framework for the problems is that you get the problem statement, the expected results, and then you figure out how to write the SQL to get the results. I have lots of hints if you get stuck, but there's also a hint-free version, which some people prefer.<p>It really helps for people who like a "learn-by-doing" approach.