The Ultimate MySQL Bootcamp: Go from SQL Beginner to Expert

Become an In-demand SQL Master by creating complex databases and building reports through real-world projects

4.63 (58660 reviews)


20.5 hours


Jul 2021

Last Update
Regular Price


What you will learn

Create your own database or interact with existing databases

Write complex SQL queries across multiple tables

Build a web app using NodeJS and MySQL

Model real-world data and generate reports using SQL

Answer company performance or sales questions using data


If you want to learn how to gain insights from data but are too intimidated by databases to know where to start, then this course is for you. This course is a gentle but comprehensive introduction to MySQL, one of the most highly in-demand skills in the business sector today.  

Whether you work in sales or marketing, you run your own company, or you want to build your own apps, mastering MySQL is crucial to answering complex business problems and questions using insights from data. The Ultimate MySQL Bootcamp introduces you to a solid foundation in databases in a way that’s both informative and engaging. Yes, that’s right, it’s possible to make an engaging course on databases.  

In this course, you will:

  • Learn the ins and outs of SQL syntax

  • Generate reports using sales and user data

  • Analyze data using Aggregate Functions

  • Run complex queries using MySQL logical operators and string functions

  • Write all the common SQL joins

  • Work with large datasets containing thousands of entries

  • Build a web app using MySQL and NodeJS

  • Design and implement complex database schemas

  • Learn to navigate the treacherous world of storing dates and times

  • Clone the database structure of a photo sharing social network

  • Write Javascript code to generate fake data sets

  • And more!

This course is also chock full of exercises, challenges, projects, and opportunities for you to practice what you’re learning. Apply what you’re learning to real-world challenges such as finding a website’s power users, calculating your top students, identifying bots on a site, or determining which hashtags generate the most traction on a site. Along the way, you’ll also get to meet my pet cat, Blue! (She’s really cute.)

Why Learn MySQL

Consistently ranked the most in-demand skill in recent employer surveys, SQL is a fantastic way to increase your income and boost your professional development. So many companies today use MySQL, including Twitter, Uber, Airbnb, Dropbox, Github, Kickstarter, Udemy, Slack, and many others. Unsure about the difference between SQL and MySQL? MySQL is the most popular open source SQL database out there, so it’s a great choice to begin your learning journey. We’ll talk a lot more about the difference between SQL and MySQL in the course, but 95% of what you learn about MySQL in this course will apply to other databases such as Postgres, Oracle, and Microsoft SQL Server.

Why This Course Is Different  

This isn’t going to be a course where you watch me code for 20 hours; it’s a course with ample opportunity for you to get your hands dirty writing code (even within the first 7 minutes of the course).

My teaching experience is rooted in the classroom. I’ve spent years teaching programming, web development, and databases to my in-person bootcamp students. This course combines the best of my offline courses with the convenience of learning online, in a setting that’s best for you.   

Upon completing this course, you’ll be able to interact with and query any SQL database out there. You’ll also be able to generate reports with ease, answer company performance questions using data, and integrate MySQL into complete applications.

So let’s do this! Enroll today and start learning SQL!


The Ultimate MySQL Bootcamp: Go from SQL Beginner to Expert
The Ultimate MySQL Bootcamp: Go from SQL Beginner to Expert
The Ultimate MySQL Bootcamp: Go from SQL Beginner to Expert
The Ultimate MySQL Bootcamp: Go from SQL Beginner to Expert


Introduction and 5 Minutes of SQL

Course Introduction

Instructor Introduction(s)

Syllabus Walkthrough and Prerequisites

Note about SQL Editor

Your First 5 Minutes of SQL - Let's Get Coding!

CODE: Your First 5 Minutes of SQL

How The Course Works

Getting Started: Overview and Installation

Section Introduction

What Is a Database?


Installation Overview - WATCH BEFORE INSTALLING

Cloud9 Registration IMPORTANT - PLEASE READ!!!

Mac Installation

CODE: Mac Installation

Windows Installation

Creating Databases and Tables

Section 3 Introduction

Creating Databases

CODE: Creating Databases

Dropping Databases

CODE: Dropping Databases

Using Databases

CODE: Using Databases

Introduction to Tables

The Basic Datatypes

Note about INT max size

Basic Datatypes Challenge

Basic Datatypes Challenge - Solution

Creating Your Own Tables

CODE: Creating Your Own Tables

How Do We Know It Worked?

CODE: How Do We Know It Worked?

Dropping Tables

CODE: Dropping Tables

Creating Your Own Tables Challenge

CODE: Creating Your Own Tables Challenge

Inserting Data (and a couple other things)

Section 4 Introduction

Inserting Data

CODE: Inserting Data

Super Quick Intro To SELECT

CODE: Super Quick Intro To SELECT

Multiple INSERT

CODE: Multiple Insert

INSERT Challenges

Note about using quotes inside of inserted values

INSERT Challenges Solution

CODE: INSERT Challenges Solution

NOTE: MySQL Warnings

MySQL Warnings

CODE: MySQL Warnings



Setting Default Values

CODE: Setting Default Values

A Primer On Primary Keys

CODE: A Primer on Primary Keys

Table Constraints Exercise

Table Constraints Exercise Solution

CODE: Table Constraints Exercise Solution

CRUD commmands

Section 5 Introduction

Introduction to CRUD

CODE: Introduction to CRUD

Preparing Our Data

CODE: Preparing Our Data

Official Introduction to SELECT

CODE: Official Introduction to SELECT

Introduction to WHERE

CODE: Introduction to WHERE

SELECT Challenges

SELECT Challenges Solution

CODE: SELECT Challenges Solution

Introduction to Aliases

CODE: Introduction to Aliases

The UPDATE Command

CODE: The UPDATE Command

UPDATE Challenges

UPDATE Challenges Solution

CODE: UPDATE Challenges Solution

Introduction to DELETE

CODE: Introduction to DELETE

DELETE Challenges

DELETE Challenges Solution

CODE: DELETE Challenges Solution

CRUD Challenge Section

Section 6 Introduction

CRUD Exercise Overview

CRUD Exercise Create Solution

CODE: CRUD Exercise Create Solution

CRUD Exercise Read Solution

CODE: CRUD Exercise Read Solution

CRUD Exercise Update Solution

CODE: CRUD Exercise Update Solution

CRUD Exercise Delete Solution

CODE: CRUD Exercise Delete Solution

The World Of String Functions

Section 7 Introduction

Note about Running SQL Files

Running SQL Files

CODE: Running SQL Files

Loading Our Book Data

CODE: Loading Our Book Data

Working with CONCAT

CODE: Working With CONCAT

Introducing SUBSTRING


Introducing REPLACE

CODE: Introducing REPLACE



Working with CHAR LENGTH

CODE: Working with CHAR LENGTH

Changing Case with UPPER and LOWER

CODE: Changing Case with UPPER and LOWER

Note about string functions

String Function Challenges

String Function Challenges Solution

CODE: String Function Challenges Solution

Refining Our Selections

Section 8 Introduction

Seed Data: Adding A Couple New Books

CODE: Seed Data: Adding A Couple New Books



Sorting Data with ORDER BY

CODE: Sorting Data with ORDER BY



Better Searches with LIKE

CODE: Better Searches with LIKE

LIKE Part 2: More Wildcards

CODE: LIKE Part 2: More Wildcards

Refining Selections Exercises

Refining Selections Exercises Solution

CODE: Refining Selections Exercises Solution

The Magic of Aggregate Functions

Section 9 Introduction

The Count Function

CODE: The Count Function

The Joys of Group By

CODE: The Joys of Group By

Min and Max Basics

CODE: MIN and MAX Basics

SUBQUERIES - A Problem with Min and Max

CODE: A Problem with Min and Max

Using Min and Max with Group By

CODE: Using Min and Max with Group By

The Sum Function

CODE: The Sum Function

The Avg Function

CODE: The Avg Function

Aggregate Functions Challenges

Aggregate Functions Challenges Solution

CODE: Aggregate Functions Challenges Solution

Revisiting Data Types

Section 10 Introduction


Note about CHAR and VARCHAR






Note about setting the timezone in Cloud9


Creating Our DATE data

CODE: Creating Our DATE data


Note about formatting dates

Formatting Dates

CODE: Formatting Dates

Date Math

CODE: Date Math

Working with TIMESTAMPS


Data Types Exercises

Data Types Exercises Solution

CODE: Data Types Exercises Solution

The Power of Logical Operators

Section 11 Introduction

Not Equal

CODE: Not Equal

Not Like

CODE: Not Like

Greater Than

CODE: Greater Than

Less Than

CODE: Less Than

Logical AND

CODE: Logical AND

Logical OR

CODE: Logical OR


CODE: Between

In And Not In

CODE: In And Not In

Case Statements

CODE: Case Statements

Logical Operators Exercises

Logical Operators Exercises Solution

CODE: Logical Operators Exercises Solution

Section 12: One To Many

Section 12 Introduction

Real World Data Is Messy

Types of Data Relationships

One To Many: The Basics

Working With Foreign Keys

CODE: Working With Foreign Keys

Cross Join

CODE: Cross Joins

Inner Join

CODE: Inner Joins

Left Join

CODE: Left Joins

Right Joins Pt 1

CODE: Right Joins Part 1

Right Joins Pt 2

CODE: Right Joins Part 2

Right and Left Joins: A Common Question

CODE: Right and Left Joins FAQ

Our First Joins Exercise

Our First Joins Exercise SOLUTION

CODE: Our First Joins Exercise

Our First Joins Exercise SOLUTION PT. 2

CODE: Our First Joins Exercise SOLUTION PT. 2

Section 13: Many To Many

Section 13 Introduction

Many To Many Basics

Creating Our Tables

CODE: Creating Our Tables

TV Joins Challenge 1

CODE: TV Joins Challenge 1 Solution

TV Joins Challenge 2

CODE: TV Joins Challenge 2 SOLUTION

TV Joins Challenge 3

CODE: TV Joins Challenge 3 SOLUTION

TV Joins Challenge 4

CODE: TV Joins Challenge 4 SOLUTION

TV Joins Challenge 5

CODE: TV Joins Challenge 5 SOLUTION

TV Joins Challenge 6

CODE: TV Joins Challenge 6 SOLUTION

TV Joins Challenge 7

CODE: TV Joins Challenge 7 SOLUTION

Instagram Database Clone

Section 14 Introduction

Introduction To Instagram Clone Schema

Cloning Instagram's DB: Users Schema

CODE: IG Clone Users Schema

Cloning Instagram's DB: Photos Schema

CODE: IG Clone Photos Schema

Cloning Instagram's DB: Comments Schema

CODE: IG Clone Comments Schema

Cloning Instagram's DB: Likes Schema

CODE: IG Clone Likes Schema

Cloning Instagram's DB: Followers Schema

CODE: IG Clone Followers Schema

Note about: Cloning Instagram's DB: Hashtags Part 1

Cloning Instagram's DB: Hashtags Part 1

Cloning Instagram's DB: Hashtags Part 2

CODE: IG Clone Hashtags Schema

CODE: Complete IG Clone Schema

Working With Lots Of Instagram Data

Section 15 Introduction

Loading The JUMBO dataset

The Instagram Clone DATASET

Instagram Clone Challenge 1

Instagram Challenge 1 Solution CODE

Instagram Clone Challenge 2

Instagram Challenge 2 Solution CODE

Instagram Clone Challenge 3

Instagram Challenge 3 Solution CODE

Instagram Clone Challenge 4

Instagram Challenge 4 Solution CODE

Instagram Clone Challenge 5

Instagram Challenge 5 Solution CODE

Instagram Clone Challenge 6

Instagram Challenge 6 Solution CODE

Note about Instagram Clone Challenge 7

Instagram Clone Challenge 7

Instagram Challenge 7 Solution CODE

Section 16 - Introducing Node

Note about Introducing Node

Section 16 Introduction

MySQL and Other Languages


Introduction to JOIN US app

Note about Setting Up Cloud9 for Node

5 Minute NodeJS Crash Course

CODE: 5 Minute Node Crash Course

Note about Faker install

Introduction to NPM and Faker

CODE: Introduction to NPM and Faker

Introducing the MySQL Package

Note about connecting Node to MySQL

Connecting Node to MySQL

CODE: Connecting Node to MySQL

Creating Our Users Table

CODE: Creating Our Users Table

Selecting Using Node

CODE: Selecting Using Node

Inserting Using Node

CODE: Inserting Using Node

Some MySQL/Node Magic

Bulk Inserting 500 Users - Finally!

CODE: Bulk Inserting 500 Users

500 Users Exercises

500 Users Exercises Solutions

CODE: 500 Users Exercises Solutions

Section 17 - Building Our Web App

Section 17 Introduction

Join Us Completed CODE

Introducing Express

NPM Init and package.json files

Note about Our First Simple Web App

Our First Simple Web App

CODE: Our First Simple Web App

Adding Multiple Routes

CODE: Adding Multiple Routes

Connecting Express and MySQL

CODE: Connecting Express and MySQL

Adding EJS Templates

CODE: Adding EJS Templates

Connecting The Form

CODE: Connecting the Form

Styling Part 1


Styling Part 2

Section 18 - Database Triggers

Introduction to Database Triggers

Writing Our First Trigger Part 1

Writing Our First Trigger Part 2

Preventing Instagram Self-Follows With Triggers

Creating Logger Triggers

Managing Triggers And A Warning


Kalpesh9 October 2020

I enjoyed the course. I am familiar with MySQL but needed a refresher and this course turned out to be the perfect choice. Highly recommended if you are getting started with MySQL.

Yash9 October 2020

Instructor and all the mentors posses very good knowledge about the topic. Instructor makes the topic so easy that we can easily understand and implement it. Overall a very good experience.

Brooke8 October 2020

Love the instructor so far, love that he included his cat in the intro video. I've learned SQL in the past and was worried that I would just be re-learning the same skills, but I'm encouraged by the complexity of the queries he's showing we'll get to. He incorporates tools I haven't used with SQL before in the late stages of his syllabus like NodeJS.

Chisholm8 October 2020

I took a previous course at my last job through another service and it was very limited. This has already given much more detail than that course.

Steve8 October 2020

The SQL sections were great and covered everything I needed in sufficient detail. I need to go back and review the JavaScript parts again, but as this isn't a JavaScript course, that makes sense. Thanks Colt - A great course!

Matteo27 February 2020

The course is very good and I actually learned a bit more than what I was expecting from it. The only complain I have for this course is not about the content. Instead, it is about the so many times the teacher apologizes for this and that and refers to external events such as his pet attacking his legs or the noisy refrigerator in his apartment... whatever. Even if the intentions are good (make the course funny), l find these interruptions very distracting to a point where I had to watch some video sections twice, distracting event(s) included. Beside that, Colt (the teacher) does a great job.

Larsen26 February 2020

Colt is a great teacher and is able to describe the correct situations and use good (albeit dodgy) analogies

Michelle26 February 2020

Really breaks everything down into digestible material. Would highly recommend if starting from scratch.

Bill26 February 2020

I like that the instructor has jump right in at a simple level, built on that with the second example, and then showed where we're going with the complexity. We have our first coding in, but lots to learn.

Howard26 February 2020

Good, clear explanations all the way through the course. Although I have had some prior experience with MySQL it really helped solidify and clarify some of the commands, operators and functions. I would reccommend this course to anyone starting our on their database journey.

Nelisiwe26 February 2020

I found that there are some code i was unable to execute on my end but all in all this course was informative and pretty easy to understand

Hee26 February 2020

Yes, even though I was a very beginner, I was able to follow most of the lectures apart from the final exercise which required advanced languages like JavaScript. Still, I am very happy that I have completed this course and I really appreciate that Colt has been very kind to beginners. Plus, I liked his humour :) Anyway, I am going to enrol more course taught by him. Thanks again for your excellent course.

Chhaya26 February 2020

Well, I am a final year college student but from Electrical and i was not getting any job like I gave 11 interviews. But after I watched this course, I got a job! I am really thankful for bob and Steele. Those exercises at the end of the section really helped me a lot. I would say go through these exercises by yourself. I also request that they should put exercises for the web developer course as well.

Alejandro25 February 2020

Gret explanation, solid knowledge a great course to learn MySQL. The only bad thing, you should use a MySQL Workbench or SQL Server instead of GroomIDE or Cloud 9.

Tomislav25 February 2020

Everything from this course (and more) can be learned for free on Youtube, but i still recommend this course because it saves a lot of time.


Udemy ID


Course created date


Course Indexed date
Course Submitted by