0 to Hero SQL
Peta jalan SQL, dari SELECT pertama sampai isolation level dan rencana eksekusi — ditulis dengan PostgreSQL dan MySQL berdampingan, karena keduanya berbeda tepat di tempat yang bikin repot.
Yang akan kamu dapat
- Membaca dan menulis SQL harian tanpa menebak-nebak apa yang akan dilakukan mesinnya
- Menalar NULL dengan benar, termasuk perbandingan yang diam-diam tidak mengembalikan apa pun
- Memilih join yang tepat, dan mengenali cross join tak sengaja sebelum dia jalan
- Menukar subquery bersarang dengan CTE atau window function ketika itu memang alat yang lebih jelas
- Merancang skema yang constraint-nya membuat baris salah mustahil masuk
- Membaca EXPLAIN di kedua mesin dan menjelaskan kenapa sebuah index tidak dipakai
- Memilih isolation level secara sadar, dan menyebut anomali yang masih dia izinkan
- Menulis pola produksi — upsert, keyset pagination, migrasi online — untuk kedua mesin
Isi kelas
Dasar3 materi · 48m
Join dan pembentukan3 materi · 55m
Desain2 materi · 42m
Produksi2 materi · 42m
Yang perlu disiapkan
- PostgreSQL 14+ atau MySQL 8.0+, lokal atau di Docker
- Kemauan menjalankan query-nya, bukan cuma membacanya
Sebuah terminal dan salah satu dari kedua basis data itu terpasang. Tidak perlu tahu SQL sebelumnya. Materi 8 ke atas mengasumsikan kamu sudah pernah menulis query ke tabel yang isinya sungguhan.
Deskripsi
Materi SQL kebanyakan mengajarkan satu dialek dan membiarkan sisanya kamu temukan
saat insiden. Peta jalan ini memakai PostgreSQL dan MySQL bersamaan, dan setiap
materi yang punya perbedaan menuliskannya dalam tabel, bukan catatan kaki — karena
tempat mereka berpisah bukan hal sepele. Isolation level bawaannya berbeda. Yang
satu punya FULL OUTER JOIN, yang lain tidak. GROUP BY ketat di satu mesin dan,
tergantung bagaimana servernya dikonfigurasi, longgar di mesin lain. Hal-hal
seperti itulah yang mengubah query yang mulus di staging jadi laporan bug.
Bagaimana peta jalannya diurutkan
Empat tahap, dan saling menumpuk:
- Dasar — model relasional,
SELECT, dan dua hal yang paling awal salah dipahami pemula:NULLdanGROUP BY. - Join dan pembentukan — join, subquery, CTE, lalu window function, yaitu
yang kamu pakai begitu berhenti memaksakan semuanya lewat
GROUP BY. - Desain — skema, constraint dan tipe data, lalu index dan cara membaca rencana eksekusi. Di sini SQL berhenti jadi bahasa dan mulai jadi sistem.
- Produksi — transaksi dan isolasi, lalu pola yang kamu butuhkan di basis data hidup: upsert, pagination yang masih waras di halaman 500, migrasi yang tidak mengunci tabel sepuluh menit.
Tidak ada yang digerbang. Membaca gratis dan akan tetap begitu; kamu masuk akun hanya kalau ingin tanda progres dan hasil kuisnya jadi milikmu.
Kuisnya
Ada satu kuis per tahap, bukan satu per materi, dan itu disengaja: pertanyaan yang menarik justru melintasi beberapa materi. Masing-masing 20 pertanyaan dan memberitahu skormu tanpa memberitahu nomor mana yang salah — kamu dapat topik untuk dibaca ulang, bukan jawaban untuk dihafal.
Kalau mau kalibrasi cepat dulu, kuis mandiri SQL Basics cukup masuk akal sebagai tes awal. Kalau skormu jelek, mulai dari materi 1; kalau bagus, kemungkinan kamu bisa langsung mulai dari materi 4.
Ini untuk siapa
- Engineer yang memakai ORM dan ingin tahu apa yang dia hasilkan
- Siapa pun yang pernah menulis SQL yang lancar di tabel kecil lalu tumbang di tabel besar
- Backend developer yang belum pernah ditunjukkan EXPLAIN