tutorial

17 Membuat Query untuk Mengambil Data Sederhana

17 Membuat Query untuk Mengambil Data Sederhana

Sebagai engineer, kemampuan menulis query adalah modal utama untuk berinteraksi dengan database. Pada artikel kali ini, kita akan membahas cara membuat query sederhana untuk mengambil data. Tujuannya adalah membangun fondasi kuat agar kamu bisa mengolah data dengan efektif. Saya juga akan berbagi beberapa studi kasus sederhana menggunakan SQL, agar pemahamanmu lebih praktis.


Mengapa Query itu Penting?

Query adalah instruksi yang dikirim ke database management system (DBMS) untuk mengambil, menambah, mengubah, atau menghapus data. Dalam dunia nyata, kebanyakan aplikasi—dari web, mobile, hingga enterprise—bergantung pada data hasil query untuk berjalan dengan baik.

Contoh sederhana dalam kehidupan sehari-hari:

  • Menampilkan daftar produk di toko online
  • Melihat riwayat transaksi pada aplikasi keuangan
  • Menampilkan profil pengguna di aplikasi Sosial Media

Semua itu dilakukan dengan query.


Struktur Dasar Query

Sebagai engineer, kamu akan mulai dengan perintah paling mendasar dari SQL: SELECT.

SELECT kolom1, kolom2 FROM nama_tabel WHERE kondisi;

Bagian-Bagian

BagianFungsi
SELECTMendefinisikan kolom apa saja yang diambil
FROMMenentukan tabel sumber data
WHERE(Opsional) Filter baris berdasarkan kondisi

Studi Kasus: Mengambil Data Karyawan

Mari kita gunakan contoh data berikut.

Simulasi Tabel karyawan

id_karyawannamadepartemengajitanggal_masuk
1RinaIT7_000_0002021-03-12
2BudiIT8_500_0002019-07-11
3AndiHRD7_200_0002020-01-09
4FitriFinance7_800_0002022-02-18
5SariIT6_900_0002023-10-04

1. Mengambil Semua Data

Query paling dasar adalah mengambil semua kolom dan semua baris:

SELECT * FROM karyawan;

Hasilnya:

id_karyawannamadepartemengajitanggal_masuk
1RinaIT7_000_0002021-03-12

2. Mengambil Kolom Tertentu

Sering kali kita hanya butuh kolom tertentu saja.

SELECT nama, departemen FROM karyawan;

Hasil:

namadepartemen
RinaIT
BudiIT
AndiHRD

3. Filter Data dengan WHERE

Filter data untuk departemen IT saja:

SELECT * FROM karyawan WHERE departemen = 'IT';

Hasil:

id_karyawannamadepartemengajitanggal_masuk
1RinaIT7_000_0002021-03-12
2BudiIT8_500_0002019-07-11
5SariIT6_900_0002023-10-04

4. Sorting Data

Urutkan berdasarkan gaji terbanyak:

SELECT nama, gaji FROM karyawan ORDER BY gaji DESC;

Hasil:

namagaji
Budi8_500_000
Fitri7_800_000
Andi7_200_000

5. Limiting Data

Ambil 3 karyawan dengan masa kerja terlama:

SELECT nama, tanggal_masuk FROM karyawan ORDER BY tanggal_masuk ASC LIMIT 3;

Hasil:

namatanggal_masuk
Budi2019-07-11
Andi2020-01-09
Rina2021-03-12

6. Menghitung Jumlah Data

Hitung jumlah karyawan di departemen IT:

SELECT COUNT(*) AS jumlah_IT FROM karyawan WHERE departemen = 'IT';
jumlah_IT
3

7. Misal: Simulasi Query Lebih Kompleks

Ambil nama karyawan IT yang gajinya di atas rata-rata semua karyawan di IT.

SELECT nama, gaji
FROM karyawan
WHERE departemen = 'IT'
AND gaji > (
    SELECT AVG(gaji) FROM karyawan WHERE departemen = 'IT'
);

8. Diagram Alur Proses Query

Seringkali kita perlu memvisualisasikan langkah query sederhana di-backend:

flowchart TD
    A[Client Kirim Request] --> B(Proses Query di App)
    B --> C{Perlu Filter?}
    C -- Ya --> D(Query dengan WHERE)
    C -- Tidak --> E(Query tanpa WHERE)
    D --> F{Perlu Query Lanjutan?}
    E --> F
    F -- Ya --> G(Nested Query/Subquery)
    F -- Tidak --> H(Hasil Dikirim ke Client)

Diagram di atas menggambarkan bagaimana aplikasi menangani permintaan data sederhana, lalu memutuskan apakah perlu melakukan filter atau subquery.


9. Tips Engineer dalam Membuat Query Sederhana

  1. Selalu gunakan LIMIT ketika mengambil data di environment produksi
  2. Ambil hanya kolom yang dibutuhkan
  3. Gunakan WHERE untuk mengurangi beban database
  4. Test query di development sebelum diterapkan ke production
  5. Gunakan alias untuk kemudahan membaca hasil

10. Studi Kasus Aktual: Dashboard Karyawan

Bayangkan kamu ingin menampilkan data karyawan untuk kebutuhan dashboard admin. Biasanya, user ingin:

  • Melihat total karyawan setiap departemen
  • Daftar karyawan yang baru masuk
  • Karyawan dengan gaji tertinggi

Berikut contohnya:

Total per Departemen

SELECT departemen, COUNT(*) AS jumlah
FROM karyawan
GROUP BY departemen;
departemenjumlah
IT3
HRD1
Finance1

Karyawan Baru Masuk 6 Bulan Terakhir

SELECT nama, tanggal_masuk
FROM karyawan
WHERE tanggal_masuk >= DATE_SUB(CURDATE(), INTERVAL 6 MONTH);

Karyawan Gaji Tertinggi

SELECT nama, gaji
FROM karyawan
ORDER BY gaji DESC
LIMIT 1;

11. Penutup

Membuat query sederhana adalah langkah wajib bagi semua engineer yang ingin bekerja dengan data. Pemahaman perintah dasar SELECT, WHERE, ORDER BY, dan agregasi seperti COUNT akan membantu kamu merancang dan membangun aplikasi data-driven yang efisien.

Jangan remehkan dasar ini—karena query yang baik bisa menyelamatkan aplikasi production-mu dari bottleneck data yang berbahaya.


Jika kamu punya studi kasus query menarik, tulis di kolom komentar! Selalu ada hal baru yang bisa dipelajari dari data dan logika query. Selamat mencoba, semoga data-mu selalu clean dan query-mu selalu optimal 🚀

comments powered by Disqus