Welcome to the SQL Masterclass Free GitHub Course!!!
You can find all of the content and slides for Danny Ma's SQL Masterclass held at the ODSC Asia Pacific 2021 virtual conference!
This free GitHub course is sorted into multiple tutorials which were actually delivered using O'Reilly Katacoda during the live training (which is totally ah-mazing ? )
To avoid any legal issues - all of the SQL live training material is available directly here on GitHub as a companion course which you can learn from at your leisure ?
You can also see the presentation slides for the live training here!
Click the navigation badge below to get started - all of the course tutorials can be found in the
CLICK ON THE BADGE BELOW TO GET STARTED!!!
Although all of the code examples show the outputs directly inside the training materials for this masterclass, you can also play with the data locally or on a few different hosted services provided below!
My recommendations are to use any one of the
Docker solutions to best replicate the SQLPad environment used for the actual live training session.
You can also access the free
DB-Fiddle instances below or you can also access the raw data here!
This is the preferred setup to access all of the course data in the desired SQLPad environment!
This same Docker SQLPad interface is featured in the Data With Danny Serious SQL course but with a lot more data included - you should check it out! ?
We even include instructions on how to install Docker if you haven't used it before inside the course :)
If you have Docker installed on your machine with Docker-Compose, you can directly use the
docker-compose.yml file included in the root of this repo to spin up the required SQLPad infrastructure.
Once the initialisation is complete - you can visit
localhost:3000 in your favourite browser to access the SQL interface with all the data ready to go.
Note that you may want to save all of your code in a separate text editor and copy & paste it directly into the SQLPad so you don't lose all of your code should something go wrong! ?
You can use this live Docker PostgreSQL environment to copy and paste SQL code from the
code/ folder directly here to see the outputs generated for the session.
Click on the buttons below to launch a Play-With-Docker stack - DockerHub login/signup is required but all batteries should be included.
It's totally free to create your own DockerHub account and highly recommended too if you want to create your own Docker images in the future!
??? Make sure you right click and open the link in a new tab if you're viewing this on GitHub!
Once the initialisation steps are complete and you see
Your session is ready at the bottom of the screen - there is a chance you might need to refresh your browser or click just outside the initial popout window and press your esc key to close this window as the
Close button is sometimes not working!
Next you can either hit port
3000 to use a SQLPad GUI or you can run the following to enter a
psql terminal instance if you are so inclined!
docker exec -it `docker ps -aqf "expose=5432"` psql -U postgres
If you are happy to use the
psql shell instead of the SQLPad GUI because you love the terminal - you can simply run the following commands to access the data directly too. By default, port
5432 will be used for the PostgreSQL database.
Feel free to change the
name argument to anything you like!
docker run -d --rm --name="psql-masterclass" dannyma/psql-crypto:latest docker exec -it psql-masterclass psql -U postgres
You can also access the raw data directly in a live browser interface called DB Fiddle.
Click on the badge below to get access to this free service - it takes a little bit longer to run each query when compared to the Docker solutions, so please keep this in mind!
You can also find all of the raw data inside the
Update: There are now SQL scripts for both PostgreSQL and MySQL - however all of the code inside the course contents is for PostgreSQL only.
The majority of the code snippets should still work across SQL flavours but you may need to tweak some of the queries slightly!
MySQL/init-mysql.sqlcan be ran with your favourite SQL IDE like PgAdmin4 or MySQL Workbench directly to create the required database tables
MySQL/schema-mysql.sqlcontain the table definitions in case you want to use them also and load in the CSV files
.csvfiles containing the raw data for each table if you want to import the data to another tool
Note that the two flavour init scripts are essentially the same - but MySQL has backticks instead of double quotes for table creation steps!
Thank you for your taking this free SQL Masterclass GitHub course! If you've enjoyed this - please feel free to share this with your friends and leave a review! ⭐
Here are some ways you can support the author and the Data With Danny team below ?
If you're interested in learning valuable data science skills with Danny directly - you can checkout the Data With Danny website for more details!
Join our private student community with over 1,000 data professionals, join a local study group, get help from our team of 12+ data mentors and learn more about our personalized mentorship initiatives!
The 1st part of the Data With Danny program is Serious SQL which is like this SQL course but on an entirely differently level. If you're serious about learning SQL you won't want to miss this course!
Our first live SQL training cohort begins in November 2021 - you can gain all access to course content, recorded videos, our private Discord and more for a one off payment of only $49 - find out more here!
Want to test your SQL skills and tackle 8 realistic SQL case studies and get access to a collection of free SQL learning resources?
Join the Data With Danny 8 Week SQL Challenge for free today!
Solve all 8 realistic SQL case studies designed to simulate real work scenarios and interview questions across multiple analytics domains including customer analytics, digital, banking, retail and subscriptions!
Danny is the Chief Data Mentor at Data With Danny and the Founder & CEO of Sydney Data Science, a boutique data consultancy based out of Sydney, Australia ??
After spending the last 10 years working in almost every single role in the data ecosystem, Danny is now focused on solving difficult problems at scale re-imagining data education and recruitment, and mentoring the next generation of data professionals.
He provides specialist data consultancy services:
Danny is a regular speaker at global data conferences, meetups and podcasts where he shares the importance of mentorship for all data professionals. He is also a technical author and instructor for O'Reilly.
Danny believes that he is living proof that dispels the myth that you need higher level education to be successful in the data science space, and he wants to share his experiences with others so they can do the same.