SQL IN ve NOT IN Nedir? Nasıl Kullanılır?

SQL IN ve NOT IN, SQL’de kimi zaman where koşullarında belirttiğimiz alan için birden çok değer içerisinde arama yapma ihtiyacımız olabilir. Bu değerler arasında herhangi bir değer ile eşleşme sağlanırsa kaydın listelenmesini sağlarız. Bu gibi durumlar için kullanabileceğiniz bir çok farklı senaryo var ama biz in ve not in ile bu işlemi nasıl gerçekleştirebileceğimize gözatacağız.

SQL IN ve NOT IN Nedir? Nasıl Kullanılır?

Örnek KIMLIK Tablosu

Makalede kullanacağımız örnek KIMLIK tablosu şu şekildedir.

Create Script’i

Örnek Data

Normalde IN kullanmadığımız durumda Kimlik diye bir tablomuz olduğunu düşünelim ve Ad alanında 'Murat', 'Muhammed', 'Hakan' Adındaki kişileri süzerek sonuç almak istediğimizde yazılması gereken SQL Cümlesi;

image 1
Sorgu sonucu

Üstteki kodda gördüğünüz üzere 3 değer için 3 farklı koşul ekledik. Bu sayı eğer 3 değilde 100,1000 ve daha fazla olsaydı bu durumda herhalde 100 defa yada 1000 defa koşul eklemeyecektik bu durumda IN operatörü imdadımıza yetişiyor. O zaman hemen IN operatörü ile bu 3 değer için nasıl tek koşulda kontrol sağlayabiliriz bakalım.

Ama IN operatörü ile ikinci or ifadesini kullanmadan yukarıda yazdığımız 3 isme ait sonuca ulaşabiliriz. Örnek IN sql cümlesi ise şu şekildedir;

Sözdizimi olarak sürekli OR keyword’ünü ardarda dizip kod tekrarı yapmak okunaklığı ve anlaşılabilirliği oldukça azaltmaktadır. O yüzden IN operatörünü bu gibi durumlarda kullanmak daha uygun olacaktır. Hele ki 3 seçenek içinde değilde yüzlerce yada binlerce seçeneğin herbiri için OR keyword’ünü kullanmak neredeyse imkansız olacaktır.

image 1
Sorgu sonucu

Üstteki komutta In komutu kullanarak KIMLIK tablosu içerisindeki AD alanında “Murat, Muhammet ve Hakan” ismindeki kişilerin listelenmesini sağladık. Şimdiki örneğimizde tam tersi bir durum olsun “Murat, Muhammet ve Hakan” dışındaki diğer tüm isimlere sahip kayıtların listelenmesini sağlayalım.

image 1
Sorgu sonucu

SQL IN ve NOT IN Benzer Konuları


📚 SQL IN ve NOT IN Kaynakları


✍ Lütfen olumlu-olumsuz tüm görüşlerinizi bana yorum yada mail yolu ile iletmeyi ihmal etmeyin.

🔗 Sosyal medya kanallarından makaleyi paylaşarak destek olursanız çok sevinirim.

👋 Bir sonraki makalede görüşmek dileğiyle.

5/5 - (4 votes)

Murat Öner sitesinden daha fazla şey keşfedin

Okumaya devam etmek ve tüm arşive erişim kazanmak için hemen abone olun.

Okumaya devam et