MS SQL Dersleri – 3 WHERE Kullanımı

WHERE komutu ‘SELECT’, ‘UPDATE’ ve ‘DELETE’ komutlarını belli bir kritere göre gerçekleştirmemizi sağlar. Şimdi örnek tablomuzda belli kriterlere göre data çekmeye çalışalım.

Müşteri tablomuzdan Soyadi kolonu ‘Başal’ olan müşteri listesini çekelim.

SELECT *
FROM dbo.Musteri
WHERE Soyadi = 'Başal'

Sorgumuzu çalıştırıp sonuçları inceliyoruz.

Sorgumuzun sonucunda gördüğünüz gibi istediğimiz değerlere ulaşıyoruz. Şimdi belirli kritere göre bakiye alanımızı güncelleyelim. Örneğin ID’si 3 olan müşterimizin bakiyesine 100 TL daha eklemek istiyoruz.

UPDATE dbo.Musteri
SET Bakiye += 100
WHERE ID = 3

Bu sorgu üzerinde kullandığımız ‘+=’ operatörü var olan bakiyenin üzerine girdiğimiz değeri eklememizi sağlıyor. Datalarımızı tekrar çekiyoruz.

ID ‘si 3 olan müşterimizin bakiyesi 750 TL ‘den 850 TL ‘ye arttırılarak güncellendiğini görüyoruz. Eğer bakiyesi 0 olan müşterilerimizi silmek istersek nasıl bir yol izlemeliyiz. Son olarak belirli kriterlere göre datalarımızı silmeye çalışalım.

DELETE FROM dbo.Musteri
WHERE Bakiye = 0;

Müşteri tablomuzda bakiyesi 0 olan müşterilerimizi yukarıda yazmış olduğumuz sorguyu çalıştırarak siliyoruz ve sonuçlarımızı inceliyoruz.

Sonuç olarak 0 bakiyeli müşterilerin tablomuzdan silindiğini görüyoruz. Yazımızı bitirmeden önce WHERE komutu ile kullanabileceğimiz bazı operatörleri inceleyelim.

OperatörAçıklamaKullanım Şekli
=Değeri belirtilen kayıtları arar.WHERE Adi=’Gökhan’
<>Değere eşit olmayanları kayıtlarda arar.WHERE ID <> 2
<Değerden küçük olanları kayıtlarda arar.WHERE Bakiye<130
<=Değere eşit ve küçük olanları kayıtlarda arar.WHERE Bakiye<=300
>Değerden büyük olanları kayıtlarda arar.WHERE Bakiye>100
>=Değere eşit ve büyük olanları kayıtlarda ararWHERE Bakiye>=300

LIKE, NOT LIKE, AND, OR, IN, NOT IN ve BETWEEN operatörlerini ayrı bir yazıda detaylı olarak inceleyeceğiz.

Bir yazımızın daha sonuna geldik. Konuyla ilgili eksik gördüğünüz veya sormak istediğiniz sorular için mail adresimden veya yorumlardan bana ulaşabilirsiniz.

Share

Add a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir