🗺 Panduan Belajar · Step by Step

Roadmap Belajar SQL

Jalur belajar terstruktur dari nol hingga mahir — mulai dari konsep dasar hingga window functions, CTE, dan optimasi query.

Pemula
Dasar
Menengah
Lanjut
Expert
Fase 1 — Pemula
🗄️
Langkah 01
Pengenalan Basis Data Relasional
  • Apa itu RDBMS?
  • Keuntungan & Keterbatasan
  • SQL vs NoSQL
  • Tabel, Baris, Kolom & Relasi
  • Mengenal PostgreSQL / MySQL
✏️
Langkah 02
Sintaks Dasar SQL
  • Struktur query SQL
  • SQL Keywords & Case Sensitivity
  • Tipe Data (INT, VARCHAR, DATE, BOOLEAN…)
  • Operator (=, !=, >, <, BETWEEN, LIKE, IN)
  • Komentar dalam SQL
Fase 2 — Dasar (DML & DDL)
🏗️
Langkah 03
Data Definition Language (DDL)
  • CREATE TABLE
  • ALTER TABLE (tambah/ubah/hapus kolom)
  • DROP TABLE
  • TRUNCATE TABLE
  • Skema & Namespace
📝
Langkah 04
DML — Manipulasi Data Dasar
  • SELECT … FROM … WHERE
  • ORDER BY (ASC / DESC)
  • INSERT INTO
  • UPDATE … SET … WHERE
  • DELETE … WHERE
  • LIMIT / OFFSET
🔒
Langkah 05
Constraints (Batasan Data)
  • PRIMARY KEY
  • FOREIGN KEY & Referential Integrity
  • UNIQUE
  • NOT NULL
  • CHECK
  • DEFAULT
Fase 3 — Menengah
🔍
Langkah 06
Filtering, Grouping & Aggregate
  • GROUP BY
  • HAVING
  • Aggregate: COUNT, SUM, AVG, MIN, MAX
  • DISTINCT
  • NULL handling (IS NULL, COALESCE)
🔗
Langkah 07
JOIN Queries
  • INNER JOIN
  • LEFT JOIN / RIGHT JOIN
  • FULL OUTER JOIN
  • Self Join
  • Cross Join
  • Multi-table JOIN
🪆
Langkah 08
Subqueries
  • Scalar Subquery
  • Column Subquery
  • Row & Table Subquery
  • Nested Subqueries
  • Correlated Subqueries
  • EXISTS / NOT EXISTS
⚙️
Langkah 09
Fungsi Bawaan SQL
  • Numerik: FLOOR, CEIL, ROUND, ABS, MOD
  • String: CONCAT, LENGTH, SUBSTRING, REPLACE, UPPER, LOWER, TRIM
  • Kondisional: CASE WHEN, NULLIF, COALESCE, IIF
  • Tanggal: DATE, TIME, NOW, DATEPART, DATEADD, DATEDIFF
Fase 4 — Lanjut
🪟
Langkah 10
Views
  • CREATE VIEW
  • Modifikasi View (CREATE OR REPLACE)
  • DROP VIEW
  • Materialized View
  • Kegunaan & Kapan Memakai View
Langkah 11
Indexes & Optimasi Query
  • CREATE INDEX / DROP INDEX
  • Jenis Indeks (B-Tree, Hash, Composite)
  • EXPLAIN / EXPLAIN ANALYZE
  • Query Plan & Bottleneck
  • Kapan Tidak Perlu Indeks
🔄
Langkah 12
Transaksi & Konkurensi
  • COMMIT & ROLLBACK
  • SAVEPOINT
  • Isolation Level (READ COMMITTED, SERIALIZABLE…)
  • Deadlock & Cara Menghindarinya
  • Prinsip ACID
Fase 5 — Expert
📊
Langkah 13
Window Functions
  • OVER (PARTITION BY … ORDER BY …)
  • ROW_NUMBER, RANK, DENSE_RANK
  • LAG, LEAD
  • FIRST_VALUE, LAST_VALUE, NTH_VALUE
  • Aggregate sebagai Window Function
  • NTILE & PERCENT_RANK
🧩
Langkah 14
CTE & Rekursif Query
  • WITH … AS (Common Table Expression)
  • Multiple CTE dalam satu query
  • Recursive CTE
  • CTE vs Subquery vs Temp Table
🤖
Langkah 15
Stored Procedure, Fungsi & Trigger
  • CREATE FUNCTION (User-Defined Function)
  • CREATE PROCEDURE
  • Parameter IN / OUT
  • CREATE TRIGGER (BEFORE / AFTER)
  • Event & Use Case Trigger
🏆
Langkah 16
Pola Lanjut & Best Practice
  • Normalisasi (1NF → 3NF → BCNF)
  • Desain Skema Star / Snowflake
  • Pivot / Unpivot Data
  • Full-Text Search
  • Partitioning Tabel
  • Security: Hak Akses & SQL Injection Prevention

Siap Mulai Belajar?

Mulai dari materi terstruktur, lalu uji kemampuan di Challenge dan SQL Lab.

Mulai dari Materi → Coba Challenge Buka SQL Lab