Reference Guide
Table of Contents
1. Database Fundamentals
What is a Database?
ACID Properties
Relational Database Concepts
Relationships
2. MySQL Installation (Ubuntu 24)
Installation Steps
Security Script Recommendations
Create User
Service Management
Login
3. Data Types
Numeric Types
String Types
Date/Time Types
Boolean
Common Patterns
4. DDL - Data Definition Language
CREATE DATABASE
CREATE TABLE
ALTER TABLE
DROP TABLE
TRUNCATE TABLE
View Table Structure
5. DML - Data Manipulation Language
INSERT
UPDATE
DELETE
Transactions
6. DQL - Data Query Language
SELECT Basics
WHERE Clause
ORDER BY
LIMIT
String Functions
Date Functions
Numeric Functions
Conditional Functions
7. JOINs
INNER JOIN
LEFT JOIN
RIGHT JOIN
CROSS JOIN
Self JOIN
8. Aggregate Functions
Basic Aggregates
GROUP BY
HAVING
9. Subqueries
Scalar Subquery (Single Value)
Column Subquery (List of Values)
Table Subquery (Multiple Rows/Columns)
Correlated Subquery
EXISTS
Common Table Expressions (WITH)
10. Indexes
Creating Indexes
Viewing Indexes
Dropping Indexes
When to Index
Query Optimization
11. Database Design
Design Process
Normalization
Design Patterns
12. Security
User Management
Preventing SQL Injection
Best Practices
13. Backup & Recovery
mysqldump (Logical Backup)
Automated Backup Script
Schedule with Cron
Point-in-Time Recovery
14. Best Practices
Database Design
SQL Queries
Performance
Security
Common Mistakes
Quick Reference
MySQL Command Line
Essential SQL Commands
Data Types Quick Reference
Common Patterns
Common Query Patterns
Find Duplicates
Top N Per Group
Pagination
Running Total
Conditional Counting
Last updated