## Basic SQL

Introduction

#### The SQL Tutorial for Data Analysis

Learn to answer questions with data to solve challenging problems.

Start Now

Lesson 1

#### Using SQL in Mode

Learn to use Mode's Query Editor to run SQL queries against data in a relational database.

Start Now

Lesson 2

#### SQL SELECT

The SQL SELECT statement is used to retrieve data from a database based on criteria specified in the query.

Start Now

Lesson 3

#### SQL LIMIT

Use the SQL LIMIT command to restrict how many rows a SQL query returns.

Start Now

Lesson 4

#### SQL WHERE

Use the SQL WHERE clause to filter data.

Start Now

Lesson 5

#### SQL Comparison Operators

Use SQL comparison operators like =, <, and, > to filter numerical and non-numerical data.

Start Now

Lesson 6

#### SQL Logical Operators

SQL logical operators allow you to filter results using several conditions at once.

Start Now

Lesson 7

#### SQL LIKE

An introduction to the LIKE operator, which matches similar values.

Start Now

Lesson 8

#### SQL IN

Use the SQL IN operator in the WHERE clause to filter data by a list of values.

Start Now

Lesson 9

#### SQL BETWEEN

Use the SQL BETWEEN operator to select values from a specific range.

Start Now

Lesson 10

#### SQL IS NULL

Use SQL's IS NULL operator to select rows that have no data in a given column.

Start Now

Lesson 11

#### SQL AND

Use the SQL AND operator to select rows that satisfy two or more conditions.

Start Now

Lesson 12

#### SQL OR

Use the SQL OR operator to select rows that satisfy either of two conditions.

Start Now

Lesson 13

#### SQL NOT

Use the SQL NOT operator to select rows for which a certain conditional statement is false.

Start Now

Lesson 14

#### SQL ORDER BY

See code and examples of using SQL ORDER BY to sort data.

Start Now

## Intermediate SQL

Introduction

#### Putting it together

Aggregate data and join tables for more meaningful analysis across broader data sets.

Start Now

Lesson 1

#### SQL Aggregate Functions

Aggregate data across entire columns using the COUNT, SUM, MIN, MAX, and AVG functions.

Start Now

Lesson 2

#### SQL COUNT

Using SQL COUNT to count the number of rows in a particular column.

Start Now

Lesson 3

#### SQL SUM

Use the SQL SUM function to total the numerical values in a particular column.

Start Now

Lesson 4

#### SQL MIN/MAX

See examples using the SQL MIN and MAX functions to select the highest and lowest values in a particular column.

Start Now

Lesson 5

#### SQL AVG

Using the SQL AVG function to select the average of a selected group of values.

Start Now

Lesson 6

#### SQL GROUP BY

Use the GROUP BY clause to separate data into groups

Start Now

Lesson 7

#### SQL HAVING

Use the SQL HAVING clause to filter an aggregated query.

Start Now

Lesson 8

#### SQL CASE

Using if/then logic with the SQL CASE statement.

Start Now

Lesson 9

#### SQL DISTINCT

Using SQL DISTINCT to view and aggregate unique values in a given column.

Start Now

Lesson 10

#### SQL Joins

An introduction to SQL joins and the relational logic behind them.

Start Now

Lesson 11

#### SQL INNER JOIN

Use a SQL INNER JOIN to select rows that satisfy a join statement and eliminate rows that don't.

Start Now

Lesson 12

#### SQL Outer Joins

This lesson of the SQL tutorial for data analysis introduces the concept of outer joins.

Start Now

Lesson 13

#### SQL LEFT JOIN

See code and examples for LEFT JOIN.

Start Now

Lesson 14

#### SQL RIGHT JOIN

See code and examples for RIGHT JOIN.

Start Now

Lesson 15

#### SQL Joins Using WHERE or ON

Learn the differences between filtering joined data using WHERE or ON

Start Now

Lesson 16

#### SQL FULL OUTER JOIN

Learn about SQL FULL OUTER JOIN, which returns unmatched rows from both tables being joined.

Start Now

Lesson 17

#### SQL UNION

UNION allows you to stack one dataset on top of another dataset.

Start Now

Lesson 18

#### SQL Joins with Comparison Operators

Use comparison operators with SQL joins, which is especially helpful for defining date ranges.

Start Now

Lesson 19

#### SQL Joins on Multiple Keys

Learn to join tables on multiple keys to boost performance and make SQL queries run faster.

Start Now

Lesson 20

#### SQL Self Joins

Learn the situations where you might want to join a table to itself, and how to do so.

Start Now

## Advanced SQL

Introduction

#### Leveling up

Learn advanced SQL to take your analysis to the next level

Start Now

Lesson 1

#### SQL Data Types

Learn about SQL data types and how to change a column's data type using CONVERT and CAST.

Start Now

Lesson 2

#### SQL Date Format

Learn how dates and times are formatted in SQL, and best practices for interacting with them.

Start Now

Lesson 3

#### Data Wrangling with SQL

Programmatically transform data into a format that makes it easier to work with.

Start Now

Lesson 4

#### Using SQL String Functions to Clean Data

Use SQL string functions to clean data strings and fix date formats.

Start Now

Lesson 5

#### Writing Subqueries in SQL

Use subqueries in SQL with aggregate functions, conditional logic, and joins.

Start Now

Lesson 6

#### SQL Window Functions

Learn about SQL windowing functions such as ROW_NUMBER(), NTILE, LAG, and LEAD.

Start Now

Lesson 7

#### Performance Tuning SQL Queries

Learn how to conduct SQL performance tuning by reducing table size, simplifying joins, and the EXPLAIN command.

Start Now

Lesson 8

#### Pivoting Data in SQL

Learn to pivot rows to columns and columns to rows in SQL.

Start Now

## SQL Analytics Training

Introduction

#### About Analytics Training

Hone your analytical skills by solving real-world cases from analytics teams at data-driven companies.

Start Now

Lesson 1

#### Investigating a Drop in User Engagement

Investigating a drop in user engagement with your product.

Start Now

Lesson 2

#### Investigating a Drop in User Engagement: Answers

The answer to the problem of investigating a drop in user engagement with your product.

Start Now

Lesson 3

#### Understanding Search Functionality

How to understand in-product search functionality.

Start Now

Lesson 4

#### Understanding Search Functionality: Answers

Answers how to understand in-product search functionality and if it's worth investing in.

Start Now

Lesson 5

#### Validating A/B Test Results

How to validate A/B testing results.

Start Now

Lesson 6

#### Validating A/B Test Results: Answers

Answers how to validate A/B testing results.

Start Now

Lesson 7

#### SQL Tutorial Conclusion

You're more than ready to apply your skills to real analytical problems. On to the next step.

Start Now