Dalam tutorial ini, kita akan menjelajahi klausa WHERE IN untuk menemukan bagaimana kita dapat menggunakannya untuk memfilter hasil dari tabel atau kumpulan hasil tertentu.
SQL DI MANA DALAM Klausul
Berikut ini adalah sintaks dasar klausa WHERE IN pada SQL:
PILIH kolom1, kolom2, ...
DARI nama_tabel
DIMANA nama_kolom IN (nilai1, nilai2, ...);
Kita mulai dengan pernyataan dasar “pilih” diikuti dengan kolom yang ingin kita sertakan dalam kumpulan hasil.
Selanjutnya, kita tentukan tabel dari mana kita ingin mengambil hasilnya. Terakhir, kita tentukan kondisi filter menggunakan klausa WHERE diikuti dengan nama kolom yang ingin kita filter. Setelah klausa IN, kita menentukan daftar nilai yang ingin kita gunakan untuk pemfilteran.
Contoh 1: Filter Satu Hasil
Untuk mendemonstrasikan dengan lebih baik cara menggunakan klausa WHERE IN, mari kita lihat sebuah contoh. Perhatikan tabel “film” dari database sampel Sakila.
Misalkan kita ingin mengambil semua film dengan rating PG atau PG-13. Kita dapat menggunakan klausa WHERE IN sebagai berikut:
PILIH judul, tahun_rilis, peringkatDARI film
DIMANA peringkat DI ('PG');
Dalam hal ini, kami menyediakan daftar nilai tunggal yang ingin kami ambil di klausa IN.
Contoh 2: Filter Beberapa Nilai
Kita juga dapat menentukan lebih dari satu item dalam daftar nilai. Misalnya, untuk mengambil film dengan daftar dengan rating PG dan PG-13, kita dapat menjalankan query sebagai berikut:
PILIH judul, tahun_rilis, peringkatDARI film
DIMANA peringkat DALAM ('PG', 'PG-13');
Output yang dihasilkan adalah sebagai berikut:
Contoh 3: Filter dengan Subquery
Kita juga dapat menggunakan WHERE IN dalam subkueri yang memungkinkan kita memfilter hasil dari kumpulan hasil tertentu.
Misalkan kita ingin memfilter film berdasarkan bahasanya. Misalnya, untuk mengambil film dalam bahasa Inggris dan Jepang, kita dapat menggunakan WHERE IN dalam subquery sebagai berikut:
PILIH judul, tahun_rilis, peringkatDARI film f
DIMANA bahasa_id DI (
PILIH bahasa_id
DARI bahasa
DIMANA nama IN ('Bahasa Inggris', 'Jepang')
);
Dalam contoh ini, kami membuat subkueri yang mengambil nilai “bahasa_id” untuk bahasa Inggris dan bahasa Jepang dari tabel “bahasa”. Di kueri utama, kami memilih film berdasarkan nilai “bahasa_id” yang dihasilkan.
Kesimpulan
Dalam postingan ini, kita mempelajari cara bekerja dengan klausa WHERE IN di SQL untuk memfilter hasil yang cocok dengan satu atau beberapa nilai dalam daftar tertentu.