SQL Server: Mengenal operator "IN" pada SQL Server

Kali ini kita akan membahas bagaimana cara menggunakan operator IN dalam sebuah query SQL Server.

Operator IN adalah operator logika yang memungkinkan kita menyaring data yang sesuai dengan list tertentu. Jadi kita bisa menentukan dua atau lebih nilai yang sesuai dengan operator IN.

Operator IN sering digunakan pada WHERE clause, walaupun bisa juga digunakan dalam bentuk ekspresi lainnya seperti CASE WHEN dan IF. Untuk lebih jelasnya mari langsung aja ke contoh dengan menggunakan tabel data item berikut:


Kita akan coba membuat query untuk memilih data dengan catagorycode C001 dan C004 saja.

SELECT * FROM item WHERE categorycode IN ('C001','C004')

Maka hasil dari query tersebut adalah sebagai berikut:


Contoh lain kita akan menggunakan operator IN ini untuk memfilter menggunakan kolom yang bertipe integer. Kita akan memilih data dengan itemid 5,9,11, dan 15 saja.

SELECT * FROM item WHERE itemid IN (5,9,11,15)

Maka hasil dari query tersebut adalah sebagai berikut:


Penggunaan IN juga bisa menggunakan sub query sebagai list yang akan memfilter. 

Sebagai contoh kita akan memfilter data item dengan kolom categorycode yang diambil dari tabel category yang dibuat oleh user (createdby) 'admin' .


Maka mari kita buat query seperti berikut ini:

SELECT * FROM item 
WHERE categorycode IN 
(SELECT categorycode FROM category WHERE createdby ='admin')

Hasilnya akan ditampilkan data item yang category nya dibuat oleh 'admin' yaitu kategori C002 dan C003.




Post a Comment

0 Comments