📖 Konsep Index
- Primary Key → otomatis membuat index unik.
- Unique Index → memastikan nilai kolom tidak duplikat.
- Composite Index → index pada lebih dari satu kolom.
- Fulltext Index → untuk pencarian teks.
⚠️ Index mempercepat SELECT, tapi bisa memperlambat INSERT/UPDATE/DELETE karena index juga harus diperbarui.
🛠️ Praktik Kecil
Contoh penggunaan index pada tabel pegawai:
-- Membuat index pada kolom nama
CREATE INDEX idx_nama ON pegawai(nama);
-- Membuat index unik pada email
CREATE UNIQUE INDEX idx_email ON pegawai(email);
-- Membuat composite index pada posisi dan departemen_id
CREATE INDEX idx_posisi_dept ON pegawai(posisi, departemen_id);
-- Melihat daftar index
SHOW INDEX FROM pegawai;
-- Menghapus index
DROP INDEX idx_nama ON pegawai;
👉 Gunakan EXPLAIN sebelum query untuk melihat apakah index digunakan:
EXPLAIN SELECT * FROM pegawai WHERE nama = 'Andi';