
1. #1 Introduction
1.1. What is SQL
1.2. Why learn SQL
1.3. What is Database & Types
1.4. SQL Commands
1.5. Setup Your Environment
1.5.1. Download & Install SQL Server
1.5.2. Datasets and Create Databases
2. #2 Query Data (SELECT)
2.1. SELECT
2.2. FROM
2.3. WHERE
2.4. ORDER BY
2.5. GROUP BY
2.6. HAVING
2.7. DISTINCT
2.8. TOP
2.9. Query Order & Execution
3. #3 Data Definition (DDL)
3.1. CREATE
3.2. ALTER
3.3. DROP
4. #4 Data Manipulation (DML)
4.1. INSERT
4.2. UPDATE
4.3. DELETE
5. #5 Filterting Data
5.1. Comparison Operators
5.1.1. =, !=, <>, <, >, >=, <=
5.2. Logical Operators
5.2.1. AND
5.2.2. OR
5.2.3. NOT
5.3. BETWEEN
5.4. IN
5.5. LIKE
6. #6 Combining Data
6.1. JOINS
6.1.1. Basic Joins
6.1.1.1. INNER Join
6.1.1.2. LEFT Join
6.1.1.3. RIGHT Join
6.1.1.4. FULL Join
6.1.2. Advanced Joins
6.1.2.1. LEFT Anti Join
6.1.2.2. Right Anti Join
6.1.2.3. FULL Anti Join
6.1.2.4. Cross Join
6.1.3. How to Choose The Right Join
6.1.4. How To Join Multiple Tables
6.2. SET Operators
6.2.1. UNION
6.2.2. UNION ALL
6.2.3. EXCEPT
6.2.4. INTERSECT
7. #7 Row-Level Functions
7.1. String Functions
7.1.1. CONCAT
7.1.2. LOWER/UPPER
7.1.3. TRIM
7.1.4. REPLACE
7.1.5. LEN
7.1.6. LEFT
7.1.7. RIGHT
7.1.8. SUBSTRING
7.2. Numeric Functions
7.2.1. ROUND
7.2.2. ABS
7.3. Date & Time Functions
7.4. Null Functions
7.4.1. ISNULL
7.4.2. NULLIF
7.4.3. COALESCE
7.4.4. CASE WHEN
7.4.5. IS NULL / IS NOT NULL
7.5. Case Statement
8. #8 Aggregation & Analytical Functions
8.1. Aggregate Functions
8.1.1. COUNT
8.1.2. SUM
8.1.3. AVG
8.1.4. MIN
8.1.5. MAX
8.2. Window Basics
8.3. Window Aggregate Func.
8.3.1. COUNT
8.3.2. SUM
8.3.3. AVG
8.3.4. MAX
8.3.5. MIN
8.4. Window Ranking Func.
8.4.1. ROW_NUMBER
8.4.2. RANK
8.4.3. DENSE_RANK
8.4.4. NTILE
8.4.5. CUME_DISTC
8.4.6. PERCENT_RANK
8.5. Window Value Func.
8.5.1. LAG
8.5.2. LEAD
8.5.3. FIRST_VALUE
8.5.4. LAST_VALUE
9. #9 Advanced SQL Techniques
9.1. Subqueries
9.1.1. Subqueries Basics
9.1.1.1. MAX
9.1.1.2. MIN
9.1.2. Subqueries Examples
9.1.3. Subqueries vs Joins
9.1.3.1. MAX
9.1.3.2. MIN
9.2. CTE
9.2.1. CTE Basics
9.2.2. Non-Recursive
9.2.3. Recursive
9.2.4. CTE vs Subqueries