The best way to learn a language is by practise. In case of SQL it is to write your own SQL queries and run on a database to verify your understanding and getting grasp of the language and the nuances. The questions for the queries are taken from here - https://www.richardtwatson.com/dm6e/Reader/ClassicModels.html. Some additional question are also covered. Each subtopic in that page is diving into individual script files here. The sample mysql database relational model can be viewed here - https://www.mysqltutorial.org/mysql-sample-database.aspx/
If you are planning to use my scripts as a reference of your learning here's some points to note.
- I am using a Classic models sample database, the script for creating the database is available in the files.
- My setup for practise is using the AWS free tier MySQL community server. I've used MySQL workbench as my SQL client. If you need details on how to setup a MySql connection in the workbench, watch this - https://www.youtube.com/watch?v=Ng_zi11N4_c&t=442s. This also addresses problems with inbound traffic rule that may not be setup by default.
I have added some alternative query approaches as a means to verify your results. This is currently still in progress as I am working on other subtopic queries.