Merhaba Arkadaşlar,
Phphocasi.com.tr sitesi üzerinden SQL Dersleri’ne devam ediyoruz. Bu derste SQL Matematiksel İşlemler ve NULL Operatörü dersini işleyeceğiz. Bir önceki derslerimizde tablolar üzerinde sorgu işlemlerini yapmıştık. Bu Derste ise matematiksel karşılaştırma operatörlerini ve NULL operatörüne göre sorgular yapacağız.
SQL Matematiksel İşlemler
Bu dersin daha iyi anlaşılması dersi örnekler üzerinden anlatacağım. Daha önce oluşturmuş olduğumuz yazarlar tablosunu görelim.
Örneğin biz yazar tablosunda tüm yazarların ders sayılarından 4 ders çıkaralım.
SELECT yazar_adi,yazar_soyad,ders_sayisi - 4 AS "Geçerli Ders" FROM yazarlar
Başarılı bir şekilde yeni sütunumuzu elde ettik. Aynı şekilde diğer matematiksel işlemleri de yapabilirsiniz.
Karşılaştırma Operatörleri
Bir önceki derslerimizde select sorgularını işlemiştik. Select sorguları where ifadesi ile koşulu sağlayan verileri alabiliyorduk. Şimdi ise karşılaştırma operatörleri ile yapalım.
Karşılaştırma operatörleri Tablosu
Operatör | Kullanımı | Anlamı |
< | a<b | a b’den küçüktür |
> | a>b | a b’den büyüktür |
= | a=b | a b’ye eşittir |
!= | a!=b | a b’ye eşit değildir |
<= | a<=b | a b’den küçüktür veya eşittir |
>= | a>=b | a b’den büyük veya eşittir |
Şimdi örneklerle pekiştirelim;
Ders sayısı 20’den az yazarlar
SELECT *FROM yazarlar WHERE ders_sayisi <20
Ders sayısı 20’den fazla yazarlar
SELECT *FROM yazarlar WHERE ders_sayisi >20
Ders sayısı 20’ye eşit yazarlar
SELECT *FROM yazarlar WHERE ders_sayisi =20
Ders sayısı 20’den farklı yazarlar
SELECT *FROM yazarlar WHERE ders_sayisi !=20
Aynı şekilde diğer operatörleri de yapabilirsiniz.
NULL Değer Sorgulama
Tablo üzerinde bazen bazı sütunlar boş değer alabilir. Sebebi ise herhangi bir değer girilmemesidir. Bu yüzden bazı durumlarda bu verileri kontrol edilmesi gerekiyor. Bunun için NULL ifadesi kullanacağız.
Hemen yazarlar tablomuza bakalım.
Görüldüğü gibi tablo da bazı değerler NULL yani boş, şimdi biz bunları kontrol edelim;
İlk önce yazar soyadı boş olan verileri bulalım.
SELECT *FROM yazarlar WHERE yazar_soyad IS NULL
Gördüğünüz gibi bir yazarın soyadı değeri girilmemiş. Peki boş olmayan değerleri almak istesek o zaman ne yapacağız. Hemen gösterelim;
SELECT *FROM yazarlar WHERE yazar_ders IS NOT NULL
Bu şekilde yazar ders sütunu boş olan veriler dışında tüm verileri elde ettik.
Başka bir örnek daha yapalım örneğin yazarları ders sayısına göre küçükten büyüğe sıralayalım.
SELECT *FROM yazarlar ORDER BY ders_sayisi
Görüldüğü gibi yazarları ders sayılarına göre sıraladık. Fakat ilk satırda NULL bir değer var ve listenin ilk sırasında yer alıyor ama bu yanlış çünkü biz bu değerin ne olduğunu bilmiyoruz. Onun için bu satırı dahil etmememiz gerekiyor. Hemen kodlarımızı yazalım;
SELECT *FROM yazarlar WHERE ders_sayisi IS NOT NULL ORDER BY ders_sayisi
Görüldüğü gibi ders sayısı boş olan satırı dahil etmedik.
Şimdi ders sayısı NULL değer olmayan ve ders sayısı 20’nin altında olan tüm yazarlara 5 tane ders ekleyen kodu yazalım.
SELECT yazar_adi,yazar_soyad,ders_sayisi, (ders_sayisi +5) AS "Yeni Ders Sayısı" FROM yazarlar WHERE ders_sayisi IS NOT NULL AND ders_sayisi <20
Bu şekilde yeni tablomuzu elde etmiş olduk.
Phphocasi.com.tr da SQL Dersleri eğitim serisinde bir yazının daha sonuna geldik.Bu dersimizde SQL Matematiksel İşlemler ve NULL operatörü yazısını işledik. Bir sonraki derste görüşmek üzere. Eksik yada yanlış gördüğünüz bir yer varsa SORU- CEVAP kısmından veya dersin altındaki yorum kısmında veya iletişim bilgilerimden bana ulaşabilirsiniz.
37