Ketika mendengar istilah “query”, kamu mungkin membayangkan sebuah sistem yang kompleks dan teknis. Padahal, dalam dunia teknologi, query adalah salah satu konsep dasar yang penting, khususnya dalam pengelolaan database.
Artikel ini akan membantu kamu memahami apa itu query database, bagaimana cara query bekerja, hingga contoh penggunaannya dalam SQL. Mari simak bersama!
Daftar Isi
Apa Itu Query Database?
Query atau Kueri dalam bahasa Indonesia merujuk pada permintaan data dari database yang diajukan dengan menggunakan kode perintah tertentu.
Kode ini disebut dengan bahasa query. Bahasa query yang paling populer dan sering digunakan dalam aplikasi database adalah SQL atau Structured Query Language.
Kemampuan query untuk memenuhi permintaan data dari banyak pengguna menjadikannya bagian penting dalam pengelolaan database. Namun, query hanya dapat memproses permintaan jika data yang kamu minta memang ada dalam database.
Jika ternyata permintaan dan data tidak cocok, maka hasil yang kamu harapkan tidak akan keluar.
Penulisan query membutuhkan sintaks khusus agar dapat dipahami oleh sistem database. Tadi kita sudah mengetahui bahasa query paling populer, selain SQL, ada bahasa query lain seperti DMX, AQL, dan Datalog, meskipun SQL tetap menjadi standar untuk Database Management System (DBMS).
Query dibagi menjadi dua jenis, yaitu:
- Select Query: Digunakan untuk mengambil informasi data database. Misalnya, ketika kamu ingin menampilkan daftar pelanggan atau produk, kamu bisa menggunakan perintah yang termasuk ke dalam jenis Select Query.
- Action Query: Digunakan untuk memanipulasi data dalam database, seperti menambahkan, memperbarui, atau menghapus informasi.
SQL, sebagai bahasa query standar, mendukung semua jenis query ini dan telah digunakan secara luas oleh administrator database (DBA) di berbagai sistem database.
Bagaimana Cara Kerja Query Database?
Setelah membahas pengertiannya, kita akan masuk pada bagian yang lebih teknis, yaitu bagaimana query sebenarnya bekerja.
Di bawah ini adalah langkah-langkah yang terjadi ketika kita akan menjalankan sebuah query.
1. Penerimaan Query
Pada tahap pertama, query dikirimkan oleh pengguna ke database melalui sistem Database Management System (DBMS). Query ini bisa berupa perintah SQL untuk mengambil, mengubah, atau menghapus data dari tabel yang ada.
2. Parsing Query
Setelah query diterima, proses selanjutnya adalah parsing. Parsing adalah tahap di mana query yang dikirimkan diperiksa untuk memastikan bahwa sintaks dan strukturnya benar sesuai dengan aturan bahasa query (misalnya SQL).
Jika terdapat kesalahan sintaks, maka DBMS aan menampilkan pesan kesalahan dan proses eksekusi akan dihentikan. Sebaliknya, jika query valid, proses akan diteruskan ke tahap selanjutnya.
3. Optimasi Query
Setelah parsing, query yang valid akan melewati tahap optimisasi. Pada tahap ini, DBMS akan menggunakan berbagai algoritma untuk menentukan urutan operasi yang paling efisien, terutama saat berurusan dengan query yang kompleks atau melibatkan banyak data.
Tahapan ini sangat penting, karena query yang tidak dioptimalkan dapat mengakibatkan performa yang buruk, terutama pada database besar.
Misalnya, DBMS akan memilih apakah harus melakukan pemindaian penuh tabel atau menggunakan indeks untuk mempercepat pencarian data.
4. Eksekusi Query
Setelah query selesai dioptimalkan, selanjutnya query akan dieksekusi. Pada tahap ini, DBMS mulai memanipulasi data yang ada di dalam database berdasarkan perintah yang diberikan oleh query.
Misalnya, jika query meminta untuk menampilkan data, maka DBMS akan mencari data yang relevan dan mengirimkannya kembali ke pengguna. Jika query adalah perintah untuk mengupdate atau menghapus data, maka perubahan tersebut akan diterapkan pada database.
5. Pengembalian Hasil
Setelah eksekusi selesai, DBMS mengembalikan hasilnya ke pengguna. Jika query adalah perintah SELECT, hasilnya akan menampilkan data yang diambil dari tabel sesuai kondisi yang ditentukan dalam query.
Jika query adalah perintah INSERT, UPDATE, atau DELETE, DBMS akan mengkonfirmasi bahwa operasi tersebut selesai dilakukan.
6. Penyimpanan Perubahan
Jika query melibatkan perubahan data seperti INSERT, UPDATE, atau DELETE, perubahan tersebut akan berdampak juga ke database yang kamu miliki. Ini memastikan bahwa database mencatat semua perubahan melalui query yang diberikan.
Apa Saja Fungsi Query Database?
Query memiliki berbagai fungsi dalam pengelolaan database. Fungsi-fungsi ini sangat penting untuk memanipulasi dan mengelola data yang ada dalam sistem database. Berikut adalah beberapa fungsi utama dari query:
1. Mengambil Data (SELECT)
Salah satu fungsi paling dasar dari query adalah mengambil data atau menampilkan informasi yang tersimpan di dalam database. Query SELECT dapat membantu kamu dengan banyak hal, seperti memilih kolom tertentu hingga memfilter data berdasarkan kriteria yang sudah ditentukan. Misalnya, jika kamu ingin melihat nama dan alamat pelanggan yang berusia lebih dari 25 tahun, kamu bisa menggunakan query seperti ini:
Fungsi SELECT penting, terutama dalam aplikasi yang menampilkan data kepada pengguna.
2. Menambah Data (INSERT)
Setelah mengambil data dengan SELECT, ada kalanya kita perlu menambah data baru ke dalam database. Query INSERT digunakan untuk menambah data baru ke dalam tabel.
3. Memperbarui Data (UPDATE)
Kadang-kadang, data yang ada di database perlu diperbarui, seperti saat ada perubahan alamat atau status pelanggan. Di sinilah query UPDATE berperan. Query ini digunakan untuk memperbarui informasi yang sudah ada. Fungsi ini sangat berguna ketika ada perubahan data yang perlu segera diterapkan, seperti memperbarui informasi kontak pelanggan atau status transaksi.
4. Menghapus Data (DELETE)
Fungsi query DELETE dalam SQL adalah untuk menghapus data atau baris tertentu dari sebuah tabel dalam database. Kamu bisa menggunakan query ini untuk menghapus data yang sudah tidak diperlukan lagi atau relevan berdasarkan kondisi tertentu. Tapi, perlu hati-hati saat menggunakan query DELETE ini karena data yang sudah dihapus tidak bisa dikembalikan lagi, kecuali jika kamu memiliki backup datanya.
5. Menggabungkan Data (JOIN)
Query JOIN digunakan jika kamu ingin menggabungkan data dari dua atau lebih tabel yang berkaitan. Misalnya, kamu ingin menampilkan nama pelanggan bersama dengan pesanan yang mereka buat, kamu bisa menggabungkan dua tabel pelanggan dan pesanan dengan query ini:
SELECT pelanggan.nama, pesanan.total
FROM pelanggan
JOIN pesanan ON pelanggan.id = pesanan.pelangan_id;
Dengan query ini, kita akan menggabungkan tabel pelanggan dan pesanan berdasarkan hubungan antar kolom id di tabel pelanggan dan pelanggan_id dari tabel pesanan.
6. Menampilkan Data Unik (DISTINCT)
Kadang tanpa sadar kita menginput data yang sama berulang kali ke dalam database. Jika hal itu terjadi, kamu bisa menggunakan fungsi DISTINCT untuk menghilangkan data yang terduplikasi. Jadi, hasil yang tampil hanya data yang unik saja. Contoh querynya seperti ini:
SELECT DISTINCT kota
FROM pelanggan;
Dengan query ini, kamu hanya akan mendapatkan kota yang unik tanpa data duplikasi, meskipun beberapa pelanggan tinggal di kota yang sama. Fungsi DISTINCT akan sangat membantu, terutama jika kamu ingin mengetahui data yang bervariasi tanpa adanya pengulangan.
7. Mengurutkan Data (ORDER BY)
Ketika kamu ingin mengambil data yang cukup banyak, mungkin sebaiknya kamu menampilkannya dengan urutan tertentu agar lebih mudah dibaca dan dan dipahami. Di sinilah kamu membutuhkan fungsi ORDER BY. Kamu bisa menampilkan data dengan urutan menaik (ascending) atau menurun (descending). Contohnya seperti query di bawah ini:
SELECT nama, usia
FROM pelanggan
ORDER BY usia DESC;
Dengan query ini kamu akan menampilkan nama dan usia pelanggan berdasarkan usia mereka, pelanggan tertua akan ditampilkan paling atas.
8. Menghitung Data (COUNT, AVG, SUM)
Tidak hanya bisa digunakan untuk mengambil data, query juga bisa digunakan untuk melakukan analisis sederhana seperti menghitung jumlah data atau rata-rata dari kolom tertentu.
Fungsi agregat seperti COUNT, AVG, dan SUM sangat berguna untuk mendapatkan informasi statistik dengan cepat. Misalnya, untuk menghitung berapa banyak pelanggan yang ada di dalam database kamu bisa menggunakan query berikut.
SELECT COUNT(*)
FROM pelanggan;
Dengan menggunakan query ini, kamu dapat melihat total pelanggan yang ada di dalam tabel. Begitu juga dengan fungsi AVG yang berguna untuk menghitung rata-rata dan SUM untuk menghitung jumlah atau total nilai dari kolom tertentu.
Jenis-Jenis Bahasa pada Query
Untuk berkomunikasi dengan database, kamu perlu menggunakan bahasa query. Bahasa ini terdiri dari berbagai jenis, namun yang paling umum digunakan adalah SQL.
1. SQL (Structured Query Language)
Bahasa standar yang digunakan untuk mengelola dan memanipulasi data di database relasional. SQL digunakan dalam berbagai platform seperti MySQL, PostgreSQL, dan SQL Server.
2. NoSQL Query
Jenis bahasa ini digunakan untuk database non-relasional seperti MongoDB dan Cassandra. Format query-nya lebih fleksibel dibandingkan dengan SQL.
3. GraphQL
GraphQL adalah bahasa query modern yang biasa digunakan untuk API. Dengan GraphQL, pengguna dapat mengambil data yang lebih spesifik dari dalam server.
Setiap jenis bahasa query memiliki keunggulan dan kegunaannya masing-masing, yang dapat disesuaikan dengan kebutuhan aplikasi.
Contoh Penggunaan Query SQL
Berikut adalah beberapa contoh penggunaan query dalam SQL:
1. Cara Membuat Database
CREATE DATABASE namaDatabase;
Ubah namaDatabase sesuai dengan kebutuhan kamu.
2. Cara Membuat Tabel
CREATE TABEL namaTabel (
id INT PRIMARY KEY,
nama VARCHAR(50),
alamat VARCHAR(100)
);
Dari query ini akan dihasilkan sebuah tabel bernama namaTabel (kamu bisa mengubahnya sesuai kebutuhan) dengan tiga kolom:
- Id: Untuk menyimpan angka integer yang menjadi identifikasi unik setiap baris data (dengan PRIMARY KEY)
- Nama: Untuk menyimpan teks dengan panjang maksimal 50 karakter
- Alamat: Untuk menyimpan teks dengan panjang maksimal 100 karakter.
Jadi, dengan query ini, kamu akan memiliki tabel baru yang siap digunakan untuk menyimpan data dengan struktur yang telah didefinisikan.
3. Cara Menambahkan Data ke Tabel
Jika kamu ingin menambahkan pelanggan baru ke dalam sistem, kamu bisa menggunakan query ini:
INSERT INTO pelanggan (nama, alamat, usia)
VALUES (‘Rudi’, ‘Jl. Bali 12’, 30);
Dengan query ini, data baru akan ditambahkan ke dalam tabel pelanggan yang sudah ada.
4. Cara Mengambil Data dari Tabel
SELECT nama, alamat
FROM pelanggan
WHERE usia > 25;
Dari query itu, ada dua kolom yang kita pilih, yaitu nama dan alamat dari tabel pelanggan, dan hanya menampilkan data dengan pelanggan berusia lebih dari 25 tahun.
5. Cara Memperbarui Data dari Tabel
Jika ingin mengubah data pada tabel yang sudah ada contohnya mengganti alamat pelanggan, kamu bisa menggunakan query ini:
UPDATE pelanggan
SET alamat = ‘Jl. Jakarta 12’
WHERE id = 34;
Query ini akan memperbarui alamat pelanggan yang memiliki id 34 menjadi Jl. Jakarta 12.
6. Cara Menghapus Data dari Tabel
Jika kamu perlu menghapus data pelanggan yang tidak lagi aktif, kamu bisa menulis query seperti ini:
DELETE FROM pelanggan
WHERE id = 1;
Dengan query ini, data pelanggan dengan id 1 akan dihapus dari tabel.
Penutup
Kemampuan untuk mengelola dan memproses data melalui query dapat menjadi nilai tambah, terutama di era digital yang serba cepat seperti sekarang ini. Memahami bagaimana query bekerja akan membantu kamu untuk bekerja lebih efisien, membuat keputusan yang lebih akurat karena melibatkan data didalamnya, dan meningkatkan produktivitas.
Sekarang, setelah kamu mengenal lebih dalam apa itu query database, apakah kamu tertarik untuk mempraktikannya secara langsung? Kamu bisa mencobanya dengan membuat database sederhana, dan mulai memanipulasi data di dalamnya dengan contoh query yang ada di artikel ini.
Ingin belajar lebih lanjut atau mengembangkan website kamu? Pastikan kamu memiliki domain dan hosting yang andal sebagai fondasi utamanya. Exabytes Indonesia menawarkan layanan domain murah, server VPS berkualitas, dan hosting terbaik untuk membantu kamu memulai. Dengan infrastruktur yang andal dan harga terjangkau, Exabytes adalah mitra ideal untuk mendukung kebutuhan digital kamu.
Semoga artikel ini bermanfaat dan selamat mencoba!
















