Halo Calon Backend Developer! 👨💻
Melanjutkan materi SQL sebelumnya tentang GROUP BY (Pengelompokan), sekarang kita masuk ke masalah yang lebih real.
Bayangkan database aplikasi Kasir (POS) kamu sudah berjalan setahun. Ada ribuan transaksi dari bulan Januari sampai Desember. Tiba-tiba Owner Cafe bilang: "Saya mau lihat omzet khusus bulan Agustus kemarin dong. Mau ngecek pas ada event 17-an."
Kalau kamu SUM() semua datanya, yang keluar adalah total omzet setahun. Salah dong? Di sinilah kamu butuh "Saringan" atau Filter. Di SQL, mantranya adalah WHERE dan BETWEEN.
Yuk kita bedah cara kerjanya biar laporan di aplikasimu makin canggih!
1. WHERE (Si Penjaga Pintu) 🚪
Bayangkan WHERE itu seperti Bouncer atau Satpam di pintu masuk club. Dia cuma membolehkan data yang memenuhi syarat untuk masuk ke dalam perhitungan.
Contoh kasus: Bos cuma mau lihat penjualan kategori "Minuman". Query-nya:
SELECT * FROM menu
WHERE kategori = 'Minuman';
Data "Makanan" atau "Snack"? Ditolak masuk sama Satpam WHERE.
2. BETWEEN (Rentang Waktu) 📅
Ini pasangan wajib buat laporan keuangan. Biasanya kita mau filter data berdasarkan Periode Tanggal (Mulai tanggal X sampai tanggal Y).
Daripada nulis ribet begini: WHERE tanggal >= '2024-08-01' AND tanggal <= '2024-08-31' (Kepanjangan!)
Mending pakai BETWEEN. Lebih elegan dan gampang dibaca. Contoh kasus: Laporan Penjualan Bulan Agustus. Query-nya:
SELECT tanggal, total_bayar
FROM transaksi
WHERE tanggal BETWEEN '2024-08-01' AND '2024-08-31';
3. Combo Maut: Filter + Aggregate 💥
Nah, ini "Daging"-nya. Gimana cara bikin laporan: "Total Omzet (SUM) khusus bulan Agustus (BETWEEN)?"
Kita gabungkan jurus artikel sebelumnya dengan jurus ini:
SELECT SUM(total_bayar) AS omzet_agustus
FROM transaksi
WHERE tanggal BETWEEN '2024-08-01' AND '2024-08-31';
Alurnya:
-
Database melakukan Filtering dulu (
WHERE). Data selain bulan Agustus dibuang. -
Sisa data bulan Agustus baru dihitung Jumlahnya (
SUM). -
Keluarlah angka omzet yang akurat!
Kesimpulan
Fitur Filter Tanggal adalah fitur wajib di setiap dashboard admin. Tanpa WHERE dan BETWEEN, aplikasi kasirmu cuma akan menampilkan angka total yang membingungkan.
Di Source Code Aplikasi POS Cafe & Resto yang saya tawarkan, fitur ini sudah otomatis, lho! Tinggal pilih tanggal di Date Picker (Kalender), klik "Filter", dan sistem akan otomatis menjalankan query BETWEEN di belakang layar. Laporan harian, mingguan, atau bulanan langsung tersaji rapi.
Mau lihat gimana implementasi kodingannya di PHP? Atau mau langsung pakai aplikasinya? Langsung cek demo di bawah ini ya! 👇