PHP MySQL Where: Menyaring Data dengan Kondisi

Menampilkan seluruh isi tabel jarang cukup — biasanya kita hanya ingin data tertentu, misalnya pengguna dari kota Jakarta atau produk yang stoknya masih ada. Untuk menyaring data seperti ini, kita menggunakan klausa MySQL Where PHP.

WHERE Dasar

Klausa WHERE menentukan kondisi baris mana yang diambil:

SELECT * FROM pengguna WHERE kota = 'Jakarta';

Hanya baris yang kotanya “Jakarta” yang akan dikembalikan.

Operator pada WHERE

Anda bisa memakai berbagai operator perbandingan: =, !=, >, <, >=, dan <=. Contoh mengambil produk yang harganya di atas 10.000:

SELECT * FROM produk WHERE harga > 10000;

Menggabungkan Kondisi: AND dan OR

Untuk beberapa syarat sekaligus, gunakan AND (semua harus benar) atau OR (salah satu benar):

SELECT * FROM produk WHERE harga > 10000 AND stok > 0;

Pencarian dengan LIKE

Untuk mencari sebagian teks, gunakan LIKE dengan tanda persen % sebagai karakter bebas:

SELECT * FROM pengguna WHERE nama LIKE 'B%';    -- diawali huruf B
SELECT * FROM pengguna WHERE nama LIKE '%budi%'; -- mengandung 'budi'

WHERE dengan Prepared Statement

Jika nilai kondisi berasal dari input pengguna, wajib memakai prepared statement agar aman:

<?php
$stmt = $koneksi->prepare("SELECT * FROM pengguna WHERE kota = ?");
$stmt->bind_param("s", $kota);
$kota = $_GET["kota"];
$stmt->execute();
$hasil = $stmt->get_result();
?>

Kesalahan Umum

  • Lupa tanda kutip pada nilai teks di SQL, sehingga query error.
  • Memasukkan input pengguna langsung ke WHERE tanpa prepared statement — celah SQL injection.

Kesimpulan

Dengan MySQL Where PHP, Anda dapat mengambil tepat data yang dibutuhkan berdasarkan kondisi apa pun. Gabungkan dengan AND, OR, dan LIKE untuk penyaringan canggih, dan selalu gunakan prepared statement bila nilainya dari pengguna.

Referensi: untuk penjelasan lebih mendalam, kunjungi dokumentasi resmi PHP (php.net).

Baca Juga

Ali Akbar

Software Developer yang fokus mengembangkan aplikasi berbasis Web dan Desktop. Senang mempelajari teknologi baru terutama di bidang web design dan web development.

View all posts by Ali Akbar →

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *