Pernah login Tokopedia, terus lihat keranjang belanja kamu masih ada walau udah logout 3 hari lalu? Atau ngeliat 50 juta produk muncul dalam 0.5 detik pas search? Itu kerjanya database — tempat penyimpanan data yang persistent (gak hilang) + super cepat dicari (lebih cepat dari Excel berukuran besar). SQL = bahasa universal untuk "ngomong" sama database. Sekali belajar SQL, bisa pake di MySQL, PostgreSQL, SQLite, BigQuery, Oracle — semua database relational pake bahasa ini.
💡 SQL umurnya 50 tahun, masih relevan. Diciptakan IBM 1974 — sebelum internet ada. Kompetitor datang-pergi (NoSQL, GraphQL, dll) tapi SQL tetap default backbone hampir semua app dunia. Skill yang gak akan obsolete dalam 10 tahun ke depan.
Mengapa Perlu Database?
- Menyimpan data pengguna, produk, pesanan, dll.
- Bisa mencari data dengan cepat dari jutaan baris
- Data tetap aman meskipun aplikasi restart
- Bisa diakses oleh banyak pengguna sekaligus
4 Konsep Dasar
- Tabel — kumpulan data dengan struktur yang sama (seperti sheet di spreadsheet)
- Baris (Row) — satu entri data (seperti satu baris di spreadsheet)
- Kolom (Column) — jenis informasi yang disimpan (seperti header di spreadsheet)
- SQL — bahasa untuk "berbicara" dengan database
Contoh Tabel users
| id | name | age | |
|---|---|---|---|
| 1 | Budi | [email protected] | 25 |
| 2 | Siti | [email protected] | 24 |
| 3 | Andi | [email protected] | 30 |
Di BelajarWeb.dev, kamu akan menulis SQL langsung di browser — database berjalan di WebAssembly, jadi bisa dipakai offline!
🎭 Analogi sehari-hari
Database = lemari arsip kantor dengan sistem labeling super rapi. Tiap lemari (database) berisi banyak laci (tabel). Tiap laci berisi folder berlabel (baris). Tiap folder isi info terstruktur sama (kolom). SQL = petugas arsip yang bisa kamu suruh: "Ambil semua folder yang umurnya > 25, urutin abjad nama". Petugas yang efisien — gak perlu kamu obrak-abrik lemari sendiri.
⚠️ Jebakan yang sering ditemui
SELECT *di tabel besar = lambat. Pilih kolom spesifikWHERElupa pakai index = full table scan, lambat di production- NoSQL hype padahal data relasional jelas = SQL menang. Pilih NoSQL cuma kalau benar-benar butuh
- SQL injection kalau gak pake parameterized query = security disaster
- JOIN tanpa
ON= cartesian product = baris meledak (1jt × 1jt = 1 trilyun)
TL;DR: Database = penyimpanan data persistent + searchable cepat. SQL = bahasa standard query database (50 tahun, gak akan obsolete). 4 konsep: tabel, baris, kolom, query. Hampir semua app production pakai SQL (MySQL/PostgreSQL/SQLite). Skill foundational yang wajib dipelajari.