SQL deyimlerini öğrenmeye kaldığımız yerden devam edelim. Bu yazıda SQL'de veriler üzerinde kolay işlem yapmamızı sağlayan hazır fonksiyonlardan bahsedeceğiz. Öncelikle PL/SQL'de fonksiyonların nasıl ayrıldığını kısaca inceleyeceğiz. Ancak konumuz SQL olduğu için PL/SQL fonksiyonlarını ayrıntılı olarak uygulama yaparak işlemeyeceğiz. Daha sonra SQL fonksiyonlarını -COUNT, AVG, MIN, MAX- ayrıntılı olarak inceleyeceğiz.
Fonksiyon Kavramı
Programlama ile uğraşanların haşır neşir olduğu bu kavram oradaki anlamıyla eş bir kullanıma sahiptir. Yani fonksiyonunuz argüman veya argümanlar alır, onu amacınız doğrultusunda işler ve size bir sonuç döndürür. SQL'de de bu fonksiyonları çok sık kullanacaksınız. Fonksiyonlar farklı sayılarda sonuç döndürmelerine göre iki şekilde incelenirler:
- Satır başına bir sonuç döndüren fonksiyonlar: Çekilen her satır için bir sonuç değeri üretir. Yani üzerinde işlem yapılan her satır için bir sonuç üretip bunu geriye döndürürler. Argümanlar sütun ismi yada sizin belirlediğiniz bir ifade olabilir. Bu tip fonksiyonlar iç içe yani fonksiyon1(fonksiyon2(...)) şeklinde kullanılabilirler. Yazı içerisinde tüm fonksiyonları vermeyeceğim. Bu fonksiyonlardan kimini belki de hiç kullanmayacaksınız. Şimdi bu fonksiyon başlığı altındaki fonksiyon çeşitlerini bir görelim:
- Karakter fonksiyonları: Verilen karakterler üzerinde düzenleme işlemleri yaparlar.
- Nümerik fonksiyonlar: Sayısal veriler üzerinde; mod alma, sayıyı bir üst yada bir alt değere yuvarlama gibi temel işlemler yaparlar.