Course Highlights
  • Create your own database or interact with existing databases
  • Write complex SQL join queries across multiple tables
  • Master MySQL 8 Window Functions (LEAD, LAG, RANK, etc.)
  • Model real-world data and generate reports using SQL
  • Answer company performance or sales questions using data
  • Learns the ins and out of MySQL 8.x syntax
Skills you will learn!
Curriculum

6 Topics
This Course Was Just Updated!
Join The Community!
Course Intro
About Me
Getting The Course Code
First 5 Minutes of SQL

8 Topics
Section Introduction
What Is A Database?
SQL vs. MySQL
Installation: START HERE!
IMPORTANT NOTE: Windows Installation Instructions
Installation: Windows Instructions
VERY IMPORTANT: Mac Installation Notes
Installation: Mac Instructions

20 Topics
Section Introduction
Showing Databases
CODE: Showing Databases
Creating Databases
CODE: Creating Databases
Dropping and Using Databases
CODE: Dropping and Using Databases
Introducing Tables
Data Types: The Basics
Basic Datatypes Challenge
CODE: Basic Datatypes Challenge
Creating Tables
CODE: Creating Tables
How Do We Know It Worked?
CODE: How Do We Know It Worked?
Dropping Tables
CODE: Dropping Tables
Tables Basics Activity
SOLUTION: Tables Basics Activity
MySQL Comments

20 Topics
Section Introduction
INSERT: The Basics
CODE: INSERT: The Basics
A Quick Preview of SELECT
CODE: A Quick Preview of SELECT
Multi-inserts
CODE: Multi-inserts
INSERT Exercise
SOLUTION: INSERT Exercise
Working With NOT NULL
CODE: Working With NOT NULL
Sidenote: Quotes In MySQL
Adding DEFAULT Values
CODE: Adding DEFAULT Values
Introducing Primary Keys
CODE: Introducing Primary Keys
Working With AUTO_INCREMENT
CODE: Working With AUTO_INCREMENT
Create Table/ Insert Exercise
SOLUTION: Insert Exercise

24 Topics
Section Introduction
Introducing CRUD
Getting Our New "Dataset"
CODE
Officially Introducing SELECT
CODE
The WHERE clause
CODE
Rapid Fire Exercises
Rapid Fire Exercises SOLUTION
SOLUTION CODE
Aliases
CODE
Using UPDATE
CODE
A Quick Rule Of Thumb
UPDATE Exercise
UPDATE Exercise SOLUTION
SOLUTION CODE
Introducing DELETE
CODE
DELETE Exercise
DELETE Exercise SOLUTION
SOLUTION CODE

10 Topics
Section Introduction
Introducing the CRUD Challenge
CRUD Challenge Solution: Creating
SOLUTION CODE
CRUD Challenge Solution: Reading
SOLUTION CODE
CRUD Challenge Solution: Updating
SOLUTION CODE
CRUD Challenge Solution: Deleting
SOLUTION CODE

24 Topics
Section Introduction
The World Of String Functions
Loading Our Books Data
CODE
CONCAT
CODE
SUBSTRING
CODE
Combining String Functions
CODE
Sidenote: SQL Formatting
REPLACE
CODE
REVERSE
CODE
CHAR_LENGTH
CODE
UPPER & LOWER
CODE
Other String Functions
CODE
String Functions Exercise
String Functions Exerise SOLUTION
SOLUTION CODE

18 Topics
Section Introduction
Adding Some New Books
CODE
DISTINCT
CODE
ORDER BY
CODE
More On ORDER BY
CODE
LIMIT
CODE
LIKE
CODE
Escaping Wildcards
CODE
Refining Selections Exercise
Refining Selections Exercise SOLUTION
SOLUTION CODE

21 Topics
Section Introduction
Count Basics
CODE
GROUP BY
CODE
MIN and MAX Basics
CODE
Subqueries
CODE
Grouping By Multiple Columns
CODE
MIN and MAX With GROUP BY
CODE
SUM
CODE
AVG
CODE
Aggregate Functions Docs
Agg Functions Exercise
Agg Functions Exercise SOLUTION
SOLUTION CODE

24 Topics
Section Introduction
Surveying Other Data Types
CHAR vs. VARCHAR
INT TINYINT BIGINT etc.
DECIMAL
FLOAT & DOUBLE
DATE and TIME
Working With Dates
CODE
CURDATE CURTIME & NOW
CODE
Date Functions
CODE
Time Functions
CODE
Formatting Dates
CODE
Date Math
TIMESTAMPS
DEFAULT & ON UPDATE TIMESTAMPS
CODE
Data Types Exercise
Data Types Exercise SOLUTION
SOLUTION CODE

25 Topics
Section Introduction
Not Equal
CODE
NOT LIKE
CODE
Greater Than
CODE
Less Than Or Equal To
CODE
Logical AND
CODE
Logical OR
CODE
Between
CODE
Comparing Dates
CODE
The IN Operator
CODE
CASE
CODE
IS NULL
Exercise
Exercise SOLUTION
SOLUTION CODE

18 Topics
UNIQUE Constraint
CODE
CHECK Constraints
CODE
Named Constraints
CODE
Multiple Column Constraints
CODE
ALTER TABLE: Adding Columns
CODE
ALTER TABLE: Dropping Columns
CODE
ALTER TABLE: Renaming
CODE
ALTER TABLE: Modifying Columns
CODE
ALTER TABLE: Constraints
CODE

24 Topics
Section Introduction
Data is Messy
Relationships Basics
One to Many Relationship
Working with FOREIGN KEY
CODE
Cross Joins
CODE
Inner Joins
CODE
Inner Joins With Group By
CODE
Left Join
CODE
Left Join With Group By
CODE
Right Join
CODE
On Delete Cascade
CODE
Joins Exercise
EXERCISE STARTER DATA
Joins Exercise SOLUTION
SOLUTION CODE

18 Topics
Section Introduction
Many to Many Basics
Creating Our Many To Many Tables
CODE
TV Series Challenge #1
CODE
TV Series Challenge #2
CODE
TV Series Challenge #3
CODE
TV Series Challenge #4
CODE
TV Series Challenge #5
CODE
TV Series Challenge #6
CODE
TV Series Challenge #7
CODE

13 Topics
Introducing Views
CODE
Updateable Views
Replacing/Altering Views
CODE
HAVING clause
CODE
WITH ROLLUP
CODE
SQL Modes Basics
CODE
STRICT_TRANS_TABLES
More Modes

17 Topics
Important Note (please read)
Introducing Window Functions
Using OVER()
CODE
PARTITION BY
CODE
ORDER BY with Windows
CODE
RANK()
DENSE_RANK & ROW_NUMBER()
CODE
NTILE()
CODE
FIRST_VALUE
CODE
LEAD and LAG
CODE

18 Topics
Section Introduction
IMPORTANT NOTE ABOUT THIS SECTION!
Introducing Instagram Clone
Users Schema
CODE
Photos Schema
CODE
Comments Schema
CODE
Likes Schema
CODE
Followers Schema
CODE
Note!
3 Approaches for Hashtags
Implementing Hashtags Table
CODE
Complete Instagram Schema

17 Topics
Section Introduction
Getting Lots of Instagram Data
CODE
Instagram Challenge #1
CODE
Instagram Challenge #2
CODE
Instagram Challenge #3
CODE
Instagram Challenge #4
CODE
Instagram Challenge #5
CODE
Instagram Challenge #6
CODE
Instagram Challenge #7
CODE

1 Topic
Additional SQL Resources

7 Topics
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

11 Topics
Section Introduction
What Is a Database?
SQL Vs. MySQL
Important note about the next lecture
Installation Overview - WATCH BEFORE INSTALLING
Now using GoormIDE instead of Cloud9
GoormIDE Registration IMPORTANT - PLEASE READ!!!
MySQL Tips to Make Your Life Easier
Mac Installation
CODE: Mac Installation
Windows Installation

20 Topics
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

23 Topics
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
NULL and NOT_NULL
CODE: NULL and NOT NULL
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

24 Topics
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

10 Topics
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

22 Topics
Section 7 Introduction
Important Note about Running SQL Files (please read)
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
CODE: Introducing SUBSTRING
Introducing REPLACE
CODE: Introducing REPLACE
Using REVERSE
CODE: Using REVERSE
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

16 Topics
Section 8 Introduction
Seed Data: Adding A Couple New Books
CODE: Seed Data: Adding A Couple New Books
Using DISTINCT
CODE: Using DISTINCT
Sorting Data with ORDER BY
CODE: Sorting Data with ORDER BY
Using LIMIT
CODE: Using LIMIT
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

19 Topics
Section 9 Introduction
The Count Function
CODE: The Count Function
The Joys of Group By
Note about SQL Mode only_full_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

23 Topics
Section 10 Introduction
CHAR and VARCHAR
Note about CHAR and VARCHAR
CODE: CHAR and VARCHAR
DECIMAL
CODE: DECIMAL
FLOAT and DOUBLE
CODE: FLOAT and DOUBLE
Note about setting the timezone in Cloud9
DATE TIME and DATETIME
Creating Our DATE data
CODE: Creating Our DATE data
CURDATE CURTIME and NOW
Note about formatting dates
Formatting Dates
CODE: Formatting Dates
Date Math
CODE: Date Math
Working with TIMESTAMPS
CODE: Working with TIMESTAMPS
Data Types Exercises
Data Types Exercises Solution
CODE: Data Types Exercises Solution

22 Topics
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
Between
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

23 Topics
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

18 Topics
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

17 Topics
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

19 Topics
Section 15 Introduction
Note about Loading The JUMBO dataset
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

27 Topics
Note about Introducing Node
Section 16 Introduction
MySQL and Other Languages
BUT WHAT ABOUT PHP
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

18 Topics
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
CODE: HTML AND CSS FILES
Styling Part 2

7 Topics
Introduction to Database Triggers
Writing Our First Trigger Part 1
Writing Our First Trigger Part 2
Note about next lecture
Preventing Instagram Self-Follows With Triggers
Creating Logger Triggers
Managing Triggers And A Warning

1 Topic
Links to Additional SQL Learning Resources

  Write a Review

The Ultimate MySQL Bootcamp: Go from SQL Beginner to Expert

Go to Paid Course