Sql Where komutu
WHERE : Sorgulamaları sınırlandırmak amacıyla koşullar konulur. Örneğin departmanı 38 kodlu personel listesi;
SELECT ad ||’ ‘ ||soyad FROM Personel_Table WHERE Dept_Id=38;
<,>, >=, <= gibi karşılaştırma karakterleri kullanılabilir. Bunlar dışında bazı SQL operatörleri ile daha rahat koşullar konulabilmektedir.
BETWEEN Min AND Max: Belirtilen Min. ve Max. değerler arasında değer alabilir. Yani belirtilen iki değer arasında değerler alır. Örneğin yaşı 18 ile 30 arasındaki personeller;
SELECT ad ||’ ‘ ||soyad FROM Personel_Table
WHERE yas BETWEEN 18 AND 30;
IN (liste) : Liste olarak tanımlanan değerleri alır. Yani bir şekilde OR ifadesine denktir. Örneğin yaşı 18, 25 ile 30 olan personeller;
SELECT ad ||’ ‘ ||soyad FROM Personel_Table
WHERE yas=18 OR yas=25 OR yas=30;
Veya
SELECT ad ||’ ‘ ||soyad FROM Personel_Table
WHERE yas IN(18,25,30);
LIKE : Benzerlik vermek için kullanılır. ‘%’ karakteri tum karakterler yerine geçer. ‘_’ karakteri ise tek karakter yerine geçer. Sadece _ işaretini çıkarmak için ‘ \_ ‘ işareti kullanılır. Küçük büyük harf ayrımı vardır.
‘%t’ à t harfiyle başlayanlar.
‘%t%’ à t harfi geçen tüm kayıtlar.
‘B_K%’ à B baş harfi ile başlayan ve 3. Harfi K olan tüm kayıtlar.
karakterleri arasında değer girilirse kolon içinde Örneğin soyadı ‘M’ ile başlayan personeller;
SELECT ad ||’ ‘ ||soyad FROM Personel_Table
WHERE soyad LIKE ‘ M% ‘ ;
IS NULL : Kayıdın null olup olmadığını kontrol eder. Örneğin maaşı null olan kayıtları listelesin;
SELECT ad ||’ ‘ ||soyad FROM Personel_Table
WHERE maas IS NULL ;
NOT : Belirtilen koşulun tam ters koşulunu verir. Örneğin maaşı null olmayan kayıtları listelesin;
SELECT ad ||’ ‘ ||soyad FROM Personel_Table
WHERE maas IS NOT NULL ;
Leave a reply