Cara membuat index tabel di mysql

Assalamuaiaikum Wr. WB

Oke, untuk yang kesekian kalinya, setelah lama tidak posting, maka baru ada kesempatan posting masalah Mysql.

Index pada mysql. apa itu index?

Secara  garis besar, index pada mysql sama dengan index yang ada pada Buku. Mungkin buku-buku yang tipis tidak ada, tapi jika anda sempat pernah membaca (paling tidak membuka Ensiklopedia ) di halaman belakang pasti ada index. Fungsi dari index itu adalah untuk mempercepat pencarian pada halaman yang kita maksud.

Nah mengapa Mysql Perlu index? ya tentu saja untuk lebih mempercepat query pencarian Select anda.

Jujur, sebelumnya saya juga tidak pernah menggunakan index karena datanya hanya sedikit. namun setelah ada tugas dan mengharuska membuat row hingga jutaan rows, maka index mutlak dibutuhkan.

Langsung saja, Sintax membaut index dalam mysql adalah sebgai berikut

CREATE INDEX nama_index

ON nama_tabel(nama_kolom11);

untuk kolom anda bisa memilih kolom dengan keyword yang paling sering dicari.

misal jika anda punya tabel barang. dan anda membutuhkan mencari nama barang dengan cepat maka contoh membuat indexnya ada sebagai berikut:

 CREATE INDEX index_barang

  ON tabel_barang(nama_barang)

Misal jika anda juga memerlukan id barang untuk mencari barang dengan cepat maka querynya seperti ini

CREATE INDEX index_barang

  ON tabel_barang(ID_barang,nama_barang)

Nah sepert itu. Namun ingat, jangan semua kolom dijadikan index. Ini penting, karena index itu memakan banyak sekali size atau resource. Index memang cepat untuk Select. tapi untuk insert,edit, dan delete data menggunakan index akan menguras banyak resource alias lama. Jadi ibarat Pisau, gunakan sebaik mungkin.

Untuk membuat index yang uniik maka dengan sytax berikut

CREATE UNIQUE INDEX nama_index ON nama_tabel(nama_kolom);

Dan untuk DROP index maka dengan syntax berikut:

ALTER TABLE nama_tabel DROP INDEX nama_index

Saya rasa Cukup sampai disini share cara membuat indexnya,

Semoga bermanfaat.

Wassalamualaikum.

Leave a Reply

Your email address will not be published. Required fields are marked *