T-SQL Select ifade ve kalıpları konulu 2 nci blog için acele etmeli, konulara yazacak çok fazla şey var ve henüz daha başındayız.Yinede Mayıs 2010 tarihinde başladığım bu blog şimdiden bir çok konuda google'da liste başında, bu gerçekten güzel , her geçen gün kaynak arayanların bloga gelmeleri ve olumlu özel mesajlar görmem bilgilerimi acizhane paylaşmakla aslında ne kadar doğru bir iş yaptığımın kanıtı sanırım. Evet T-SQL İfadeleri ve kalıplarını anlattığım 2 nci Ms Sql blogunda, veriler arasında gezinmek için devam ediniz.
• Hatırlatma : Bir önceki Transact-SQL yazımda SELECT temel ifadesini ve kalıplarına ilk giriş bilgileri ile opratörlerin kullanımlarını anlatmıştım. Bu yazıya başlamadan Transact SQL SELECT İfadesi ve kalıpları -1 yazısının ilkini mutlaka okumalısınız.
Bu bloga LIKE opertatörü ile başlayacağım.LIKE operatörü sütun değerlerini belirli bir desenle karşılaştırabildiğimiz bir operatördür.Desenle anlatılmak istenen veri türü herhangi bir karakter yazda Datetime değeri olabilmektedir.LIKE operatörü joker karakter dediğimiz % ve _ karakterlerle özel yorumlanır.Buna göre LIKE ile %( yüzde işareti) sıfır yada daha fazla karakter içeren herhangi bir karakter sorgularında kullanılır._(alt çizgi) ise herhangi tek bir karakteri belirten sorgularda kullanılır. Daha önceki blogtan hatırlayacağınız Örnek Cari Satışlar tablosundaki LIKE operötörü ile SELECT ifadesine bir örnek verecek olursam aşağıdaki sonuç aldığım ekran görüntüsü anlaşılır olacaktır.
1-)
2-) SELECT MusteriAdi,MusteriSoyadi FROM Cari_Satislar WHERE MusteriAdi LIKE '_E%'
Bu dizim ile Cari_Satislar adındaki Table 'da Müşteri adı' nın 2 nci harfi E olan müşteriler sorgulanmaktadır.
3-)
Bu dizim ile Cari Satislar adındaki Table'da Müsteri Şehirleri adlarının A ile B aralığında bulunan şehirler ve Müşteri Nakitleri sorgulanmaktadır.
NULL Değerlerin Sorgulanması :
Transact-SQL yazılarımda SELECT kalıplarını anlatırken bu blogta değinmek istediğim önemli bir konu daha var.T-SQL anlatan paylaşımcılarının genelde atlayıp değinmediği ama mutlaka başımıza gelecek bir sorgu dizisi durumu.Kısaca anlatmak gerekirse Transact SQL içinde çoğu zaman var olan bilgiyi ararız.Fakat NULL değerlerde karşılaştırma için oldukça önemlidirler.Sütunlar içerisindeki NULL değerler FALSE döndürdüklerinde sonuç kümelerinde bunlar yer almazlar.Transact SQL NULL değerler içeren sorgularımızı almak için IS [NOT] kullanarak NULL değer operatör özelliğini kullanırız. Bu anlatımımı WHERE kalıbı içinde örneklersem aşağıdaki sonuç anlaşılır olacaktır.
SELECT MusteriSehir,MusteriAdi ISNULL(MusteriSoyadi, 'Unknown') SoyadiYok FROM Cari_Satislar WHERE MusteriSehir = ' Bursa'
WHERE kalıbındanda anlaşıldığı gibi Cari_Satislar Table'da Bursa ilinde bulunan ve Soyadı Olmayan Müşteriler sorgulanmaktadır.
Bir sonraki Transact Sql Blog konusu olacak Basit Alt Sorgular için yeterli bilgiyi bu blog itibari ile tamamladığımı düşünüyorum.Sonraki bloglarda bir önceki konularıda içine alan daha detaylı sorgular sizi bekliyor olacaklar. Ms Sql İş zekası ve Veri madenciliği ile ilgileniyor ve kendinizi geliştirmek istiyorsanız geçmiş konuların üzerinden bir kez daha geçin ve alıştırmalarınızı mutlaka yapın.Tüm Ms SQL yazılarından güncel yazılara doğru devam ettiğinizde önemli fikirleride bu blogtan almış olacaksınız.
• Hatırlatma : Bir önceki Transact-SQL yazımda SELECT temel ifadesini ve kalıplarına ilk giriş bilgileri ile opratörlerin kullanımlarını anlatmıştım. Bu yazıya başlamadan Transact SQL SELECT İfadesi ve kalıpları -1 yazısının ilkini mutlaka okumalısınız.
Bu bloga LIKE opertatörü ile başlayacağım.LIKE operatörü sütun değerlerini belirli bir desenle karşılaştırabildiğimiz bir operatördür.Desenle anlatılmak istenen veri türü herhangi bir karakter yazda Datetime değeri olabilmektedir.LIKE operatörü joker karakter dediğimiz % ve _ karakterlerle özel yorumlanır.Buna göre LIKE ile %( yüzde işareti) sıfır yada daha fazla karakter içeren herhangi bir karakter sorgularında kullanılır._(alt çizgi) ise herhangi tek bir karakteri belirten sorgularda kullanılır. Daha önceki blogtan hatırlayacağınız Örnek Cari Satışlar tablosundaki LIKE operötörü ile SELECT ifadesine bir örnek verecek olursam aşağıdaki sonuç aldığım ekran görüntüsü anlaşılır olacaktır.
1-)
SELECT MusteriAdi,MusteriSoyadi
FROM Cari_Satislar
WHERE MusteriAdi LIKE 's%'
Bu kalıpla Cari Satışlar adındaki Table' da Müşteri adı S ile başlayan Müşteri adları sorgulanmaktadır.
2-) SELECT MusteriAdi,MusteriSoyadi FROM Cari_Satislar WHERE MusteriAdi LIKE '_E%'
Bu dizim ile Cari_Satislar adındaki Table 'da Müşteri adı' nın 2 nci harfi E olan müşteriler sorgulanmaktadır.
3-)
SELECT MusteriSehir,MusteriNakit
FROM Cari_Satislar
WHERE MusteriSehir LIKE '[a-b ]%'
Bu dizim ile Cari Satislar adındaki Table'da Müsteri Şehirleri adlarının A ile B aralığında bulunan şehirler ve Müşteri Nakitleri sorgulanmaktadır.
NULL Değerlerin Sorgulanması :
Transact-SQL yazılarımda SELECT kalıplarını anlatırken bu blogta değinmek istediğim önemli bir konu daha var.T-SQL anlatan paylaşımcılarının genelde atlayıp değinmediği ama mutlaka başımıza gelecek bir sorgu dizisi durumu.Kısaca anlatmak gerekirse Transact SQL içinde çoğu zaman var olan bilgiyi ararız.Fakat NULL değerlerde karşılaştırma için oldukça önemlidirler.Sütunlar içerisindeki NULL değerler FALSE döndürdüklerinde sonuç kümelerinde bunlar yer almazlar.Transact SQL NULL değerler içeren sorgularımızı almak için IS [NOT] kullanarak NULL değer operatör özelliğini kullanırız. Bu anlatımımı WHERE kalıbı içinde örneklersem aşağıdaki sonuç anlaşılır olacaktır.
SELECT MusteriSehir,MusteriAdi ISNULL(MusteriSoyadi, 'Unknown') SoyadiYok FROM Cari_Satislar WHERE MusteriSehir = ' Bursa'
WHERE kalıbındanda anlaşıldığı gibi Cari_Satislar Table'da Bursa ilinde bulunan ve Soyadı Olmayan Müşteriler sorgulanmaktadır.
Bir sonraki Transact Sql Blog konusu olacak Basit Alt Sorgular için yeterli bilgiyi bu blog itibari ile tamamladığımı düşünüyorum.Sonraki bloglarda bir önceki konularıda içine alan daha detaylı sorgular sizi bekliyor olacaklar. Ms Sql İş zekası ve Veri madenciliği ile ilgileniyor ve kendinizi geliştirmek istiyorsanız geçmiş konuların üzerinden bir kez daha geçin ve alıştırmalarınızı mutlaka yapın.Tüm Ms SQL yazılarından güncel yazılara doğru devam ettiğinizde önemli fikirleride bu blogtan almış olacaksınız.
Bu Yazının Sponsorları
Yorumlar
Yorum Gönder