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).

