Welcome to My Blog 👋

Java, Spring Framework, Microservices, Docker, Kubernetes, AWS and Others 🚀
Follow Me

Unique
  • Unique fonksiyonu parametre olarak içerisine aldığı subqueryden dönen kayıt tek bir satır içeriyorsa yani benzersiz ise TRUE değil ise FALSE döndürür.
Örnek:
  • select * from Musteri m Where unique(select siparisID from Siparis s where s.MusteriID = m.MusteriID) --> Tek bir siparişi olan müşterileri bulan sorgu

Not Unique
  • Not Unique fonksiyonu parametre olarak içerisine aldığı subqueryden dönen kayıt birden çok bir satır içeriyorsa ise TRUE değil ise FALSE döndürür.
Örnek:
  • select * from Musteri m Where not unique(select siparisID from Siparis s where s.MusteriID = m.MusteriID) --> Birden çok siparişi olan müşterileri bulan sorgu

'%' Karakteri

Sql cümlelerinde dizgi işlemlerinde kullanılır. Dizgi işlemlerinde '%' karakteri her şey olabilir anlamına gelmektedir. Bu karakter kullanıldığı yerde sonsuz sayıda karakter olabileceğini belirtir.

Örnek:

LIKE('%ET') kullanımı ET ile biten tüm dizgileri kapsar.
LIKE('%ET%') kullanımı içinde ET geçen tüm dizgileri kapsar.

'_' Karakteri

Sql cümlelerinde dizgi işlemlerinde kullanılır. Dizgi işlemlerinde '_' karakteri her şey olabilir anlamına gelmektedir. Bu karakter kullanıldığı yerde sadece bir karakter olabileceğini belirtir.

Örnek:

LIKE('_ET') kullanımı ET ile biten üç harfli tüm dizgileri kapsar.
LIKE('_E__') kullanımı ilk harfi her hangi bir harf olabilen daha sonra 'E' harfi gelen ve sonraki 2 harfi herhangi bir harf olabilen dört harfli dizgileri kapsar.

'||' Karakteri

Sql cümlelerinde dizgi işlemlerinde kullanılır. Dizgileri birleştirmek için kullanılır.

Örnek:

LIKE('Berkay' || '  ' || 'DEMİREL') kullanımı 'Berkay DEMİREL' olan dizgileri kapsar.

'\' Karakteri

Sql cümlelerinde dizgi işlemlerinde kullanılır. Dizgilerde kullanılan '%', '_' gibi özel karakterleri gerçek anlamları ile kullanmamızı sağlayan karakterdir.

Örnek:

LIKE('%Berkay\_Demirel\'e%') kullanımı içinde 'Berkay_Demirel'e' geçen dizgileri kapsar.


SQL cümlelerinde where kriter alanında kullanılan fonksiyonlardır.

ALL
  • ALL fonksiyonu parametre olarak içerisine aldığı subqueryden geriye dönen sonuçların tamamı karşılatırma kriterine uyuyorsa TRUE herhangi biri uymuyorsa FALSE döndürür.
Örnek:
  • select * from Musteri m Where 5000 < All(select siparisTutarı from Siparis s where s.MusteriID = m.MusteriID)

SOME - ANY
  • SOME - ANY fonksiyonları parametre olarak içerisine aldığı subqueryden geriye dönen sonuçların herhangi bir tanesi karşılatırma kriterine uyuyorsa TRUE hiç biri uymuyorsa FALSE döndürür.
Örnek:
  • select * from Musteri m Where 2000 < Some(select SiparisTutari from Siparis s where s.MusteriID = m.MusteriID)

EXISTS
  • Exists fonksiyonu parametre olarak içerisine aldığı subqueryden herhangi bir sonuç geriye dönüyorsa TRUE hiç bir kayıt geri dönüşü yoksa False döndürür. Exists(Select Null) gibi bir ifade ise geriye TRUE döndürür
Örnek:
  • select * from Musteri m Where Exists(select siparisID from Siparis s where s.MusteriID = m.MusteriID)


Veri tipleri performans açısından oldukça önemlidir. Oluşturduğumuz kolonlarda veri tiplerini seçerken oldukça dikkatli olmak gerekir ve amaca en uygun veri tipini seçmek gerekir.

  • Char veritipi 0 ile 255 karakter arasında veri tutabilirken, Varchar veritipi 0 ile 65,535 karakter arasında veri tutabilmektedir.
  • Char veritipi, tanımlandığı kadar kapasitenin tamamını kullanır. Örnek olarak siz 5 karakterlik bir alan tanımlamışsanız, bu alana 2 karakter bile girmiş olsanız, geriye kalan sağdan 3 karakterlik alan boşluk karakteri ile doldurulur. Varchar veritipi ise değişken bir yapıya sahiptir ve tanımlanan karakter katarına kadar olan boyutta değişkenlik gösterebilir.
  • Char veritipinin kullanım alanı olarak sabit uzunluklu veri yapıları gösterilebilir. (Örn: telefon numaraları, kredi kartı no vb.) Varchar ise değişken uzunluklu veri yapıları için uygundur. (Örn: isim, mail vb.)
  • Char ve Varchar saklama alanları Unicode karakterleri desteklemez.