SQL karşılaştırma operatörleri (like, between, in, isnull) nelerdir?

mujde (17) 8 yıl önce sordu

SQL karşılaştırma operatörleri nelerdir?

SQL LIKE, BETWEEN, IN, ISNULL nedir? 

SQL LIKE, BETWEEN, IN, ISNULL operatörleri nasıl kullanılır?

Toplam 1 cevap


ergin (2539) 8 yıl önce cevapladı

SQL de Karşılastma operatöreri iki değeri ya da ifadeyi karşılaştırmak için kullanılır. Karşılaştırma işlemi True, False ya da Null döndürür.

İlişki Operatörleri 

= eşit    

select * from ogrenciler
where yas = 18                

> büyük

select * from ogrenciler
where yas > 18  

< küçük

select * from ogrenciler
where yas < 18  

>= büyük eşit

select * from ogrenciler
where yas >= 18  

<= küçük eşit 

select * from ogrenciler
where yas <= 18  

<> eşit değil 

select * from ogrenciler
where yas <> 18  

 

IN Operatörü

Liste içindeki değerle karşılaştırma yapmak için kullanılır.

Örneğin, Öğrenciler tablosundaki bölümü Bilgisayar, Elektrik ve Yazılım olan öğrencileri seçmek için SQL sorgusunu yazalım.

select *  from ogrenciler 
Where bolum IN ('Bilgisayar', 'Elektrik', 'Yazılım') 

 

NOT IN 

Bu sorgumuz ile yukarıdaki işlemin tam tersini yaparak bu bölümler dışındaki tüm kayıtları getirecektir.

select *  from ogrenciler 
Where bolum NOT IN ('Bilgisayar', 'Elektrik', 'Yazılım') 

 

LIKE Operatörü

Karakter grubu ile karşılaştırma yapmak için kullanılır.

Örneğin, Öğrenciler tablosundaki Adı E ile başlayanları bulalım;

select *  from ogrenciler
where adsoyad LIKE 'E%' 

 

Bu örneğimizde, Öğrenciler tablosundaki Soyadi R ile bitenleri bulalım;

select *  from ogrenciler
where adsoyad LIKE '%R' 

 

Öğrenciler tablosundaki adının ikinci harfi R olanları bulalım;

select *  from ogrenciler
where adsoyad LIKE '_R%'

 

Öğrenciler tablosundaki adının üçüncü harfi G olanları bulalım;

select *  from ogrenciler
where adsoyad LIKE '_ _G%'

 

Öğrenciler tablosundaki adının sondan bir önceki harfi İ olanları bulalım;

select *  from ogrenciler
where adsoyad LIKE '%İ_'

 

Bu örneğimizde ise Öğrenciler tablosundaki içinde 'ERGİN TÜZER' içerenleri bulalım;

select *  from ogrenciler
where adsoyad LIKE '%ERGİNTÜZER%' 

 

BETWEEN Operatörü

İki değer arasında kalanları seçme işleminde kullanılır. BETWEEN işlemi sayısal (INTEGER) ve metin (VARCHAR) değerlerin yanında tarih (DATE) tipindeki değerler ile de kullanabileceğimizi unutmayın.

 

Örneğin, Öğrenciler tablomuzdaki yaşı 18 ile 25 arasındaki olan öğrencileri listelemek için SQL sorgusu yazılım.

select ad, soyad, yas from ogrenciler
where yas BETWEEN 18 AND 25

 

Diğer bir örneğimizde ise Öğrenciler tablomuzdaki 2012 yılında okula kayıt yaptırmış öğrencileri listelemek için SQL sorgusu yazılım. 

select ad, soyad, kayittarihi from ogrenciler
where kayittarihi BETWEEN '2012-01-01' AND '2012-12-31'

 

 IS NULL - IS NOT NULL Operatörü

 Null değerlerin var olup olmadığını test eder.

 Bu sorgu bize Öğrenciler tablosundaki Resim sutununda  Resmi olmayan yani boş olan kolanlarını geri döndürecektir.

select * from ogrenciler 
where resim IS NULL;


Bu sorgu ise yukarıdaki işlemin tam tersini yaparak Resmi olan kayıtları getirecektir.

select * from ogrenciler 
where resim IS NOT NULL;

 

 

mujde 8 yıl önce

Çok detaylı bir cevap olmuş çok teşekkür ederimm.