Where vs WhereIn: Penjelasan dan Contoh Kasus Sederhana
1. where Clause:
Where vs WhereIn: Penjelasan dan Contoh Kasus Sederhana
1. where Clause:
- Fungsi: Digunakan untuk menyaring hasil query berdasarkan satu kondisi tertentu.
wheredigunakan ketika kita ingin memeriksa satu nilai spesifik pada sebuah kolom. - Cara Kerja:
wherememfilter hasil query untuk hanya mencakup baris yang memiliki nilai kolom yang persis sama dengan nilai yang diberikan.
Contoh Kasus:
Misalkan kita memiliki tabel users dengan kolom roles, yang bisa berisi nilai seperti admin, jamaah, atau guest. Anda ingin mengambil semua pengguna yang memiliki role admin.
Query:
$admins = User::where('roles', 'admin')->get();
Ilustrasi:
Anggap tabel users memiliki data berikut:

Jika Anda menggunakan query where('roles', 'admin'), maka hasilnya adalah:

Catatan: where hanya memfilter satu kondisi. Jika Anda ingin memfilter berdasarkan beberapa kondisi, Anda perlu menambahkan beberapa where secara berurutan atau menggunakan whereIn.
2. whereIn Clause:
- Fungsi: Digunakan untuk menyaring hasil query berdasarkan beberapa nilai.
whereInmemungkinkan kita untuk mencocokkan nilai kolom dengan daftar nilai yang diberikan. - Cara Kerja:
whereInmemfilter hasil query untuk hanya mencakup baris yang nilai kolomnya cocok dengan salah satu nilai dalam daftar yang diberikan.
Contoh Kasus:
Misalkan Anda ingin mengambil semua pengguna yang memiliki role admin atau jamaah.
Query:
$users = User::whereIn('roles', ['admin', 'jamaah'])->get();
Ilustrasi:
Menggunakan tabel users yang sama:

Jika Anda menggunakan query whereIn('roles', ['admin', 'jamaah']), maka hasilnya adalah:

Catatan: whereIn berguna saat Anda perlu memfilter berdasarkan beberapa nilai, dan ini jauh lebih efisien daripada menulis beberapa klausa where yang terpisah.
Kesimpulan:
**where**: Digunakan untuk mencocokkan nilai tunggal di satu kolom. Cocok untuk memfilter hasil berdasarkan satu kondisi spesifik.**whereIn**: Digunakan untuk mencocokkan beberapa nilai di satu kolom. Cocok untuk memfilter hasil berdasarkan beberapa kondisi dalam satu kali query.
Analoginya:
**where**: Seperti meminta "Saya hanya ingin pengguna dengan roleadmin".**whereIn**: Seperti meminta "Saya ingin semua pengguna yang memiliki roleadminataujamaah".
Dengan memahami perbedaan ini, Anda bisa memilih klausa yang tepat untuk digunakan dalam berbagai situasi query database.
Assalamualaikum! Jika Anda menikmati konten saya, dukungan dari Anda sangat berarti bagi saya. Setiap kontribusi melalui Saweria membantu saya untuk terus berkarya dan memberikan konten yang bermanfaat. Terima kasih atas dukungan dan apresiasi Anda. Kunjungi link Saweria saya di **https://saweria.co/azwar2001**. Semoga Allah membalas kebaikan Anda!

메타데이터
- post_id
- 11bcaea8db18
- slug
- where-vs-wherein-penjelasan-dan-contoh-kasus-sederhana-11bcaea8db18
- url
- https://medium.com/@_azwar/where-vs-wherein-penjelasan-dan-contoh-kasus-sederhana-11bcaea8db18
- canonical_url
- https://medium.com/@_azwar/where-vs-wherein-penjelasan-dan-contoh-kasus-sederhana-11bcaea8db18
- author_url
- https://medium.com/@_azwar
- status
- ok
- fetched_at
- 2026-07-25 20:35:30