CREATE INDEX and USING BTREE
This blog contains about 'Create Index and Using BTREE' from Constraint
HALOOO. Yeah, back to my blog! Disini Aku akan menjelaskan pengertian dan contoh dari Constraint yaitu CREATE INDEX and BTREE. Bacanya pelan-pelan yaa, resapii dan pahamii agar bisa membantu pemahaman teman-teman semua. Enjoi!
javaCREATE INDEX idx_nama ON tabel_karyawan (nama);
javaCREATE INDEX idx_alamat_telepon ON tabel_pelanggan (alamat, telepon);
sqlCREATE UNIQUE INDEX idx_nomor_pelanggan ON tabel_pelanggan (nomor_pelanggan);
sqlCREATE INDEX idx_tanggal_lahir ON tabel_karyawan (tanggal_lahir) WHERE tanggal_lahir IS NOT NULL;
- Setiap node dalam B-Tree memiliki beberapa anak (biasanya antara 2 hingga 128), sehingga B-Tree dikenal juga sebagai pohon multi-arah.
- Setiap node dalam B-Tree menyimpan data terurut sesuai kunci data, yang memungkinkan untuk melakukan pencarian data secara efisien.
- B-Tree dirancang untuk menghindari fragmentasi disk, sehingga struktur pohonnya selalu dapat disimpan dalam satu blok memori yang berdekatan.
- Tinggi B-Tree relatif rendah dibandingkan dengan jumlah data yang tersimpan dalam struktur, sehingga waktu akses data yang diinginkan relatif cepat.
- B-Tree digunakan dalam database untuk menyimpan indeks, yang memungkinkan pengaksesan data dalam jumlah besar dengan cepat. Indeks B-Tree menyediakan cara untuk menemukan lokasi data dalam tabel, sehingga query dapat dieksekusi dengan cepat. Dalam sistem file sistematis, B-Tree digunakan untuk menyimpan informasi tentang file dan direktori, sehingga memungkinkan akses file yang cepat dan efisien.
1. B-Tree Biasa (B-Tree)
B-Tree biasa atau sering disebut B-Tree murni adalah jenis B-Tree yang paling umum digunakan. Struktur B-Tree ini memiliki tinggi yang relatif rendah dan disusun dalam urutan terurut berdasarkan kunci yang disimpan di setiap node.
Contoh :
Misalkan kita memiliki tabel employees dengan kolom id dan name dan telah diindeks dengan B-Tree pada kolom id. Untuk mencari data employee dengan id tertentu, kita dapat menggunakan query berikut:
sqlSELECT * FROM employees WHERE id = 123;
2. B+ Tree
B+ Tree mirip dengan B-Tree, namun memiliki perbedaan dalam struktur. Pada B+ Tree, seluruh data terletak pada daun node, sedangkan setiap node lain hanya berisi pointer ke node lain atau daun. B+ Tree biasanya digunakan untuk membuat indeks dalam database.
Contoh:
Misalkan kita memiliki tabel students dengan kolom id, name, dan grade dan telah diindeks dengan B+ Tree pada kolom grade. Untuk mencari semua data student yang memiliki nilai di atas 90, kita dapat menggunakan query berikut:
sqlSELECT * FROM students WHERE grade > 90;
sqlSELECT * FROM books WHERE author = 'John Doe';
sqlSELECT * FROM words WHERE word LIKE 'cat%';
sqlSELECT * FROM orders WHERE customer_id = 123;
sqlSELECT * FROM employee WHERE id = 1001;
id | name | age | salary |
---|---|---|---|
1001 | John Smith | 35 | 5000 |
2. Contoh query DB-Tree untuk mencari data dengan rentang nilai tertentu:
sqlSELECT * FROM products WHERE price BETWEEN 10 AND 100;
Hasilnya dapat seperti ini:
id | name | price |
---|---|---|
101 | Product A | 20 |
102 | Product B | 30 |
105 | Product E | 80 |
3. Contoh query DB-Tree untuk mencari data yang cocok dengan suatu pola:
sqlSELECT * FROM employee WHERE name LIKE 'J%';
id | name | age | salary |
---|---|---|---|
1001 | John Smith | 35 | 5000 |
1003 | James Brown | 29 | 3500 |
4. Contoh query DB-Tree untuk mencari data yang mengandung suatu nilai tertentu:
sqlSELECT * FROM orders WHERE customer_id = 1001;
id | customer_id | date | total |
---|---|---|---|
101 | 1001 | 2022-03-01 | 200 |
103 | 1001 | 2022-03-05 | 500 |
Komentar
Posting Komentar