Bu makalemde Oracle Sayısal fonksiyonları üzerinde duracağız. Bu makaleyi net olarak anlayabilmek için,
1- SQL Select komutunu
2- Select komutu ile nasıl fonksiyon çağırıldığını
Bilmek gerekmektedir. Oracle bizlere ciddi sayıda fonksiyon vermektedir. Biz bunlardan belli başlı olanlarını inceleyeceğiz.
Trunc: bu fonksiyon 2 parametre alır, 2. parametrenin default değeri sıfırdır ve verilmez ise doğrudan ilk parametrede verilen sayının ondalıklı kısmını atar.
Select Trunc(12.45) from dual;
eğer ikinci parametre pozitif bir sayı ise, virgülden sonra kaç basamak kalacağını gösterir.
Select Trunc(12.45,1) from dual;
—————————————
12.4
negatif bir sayı verilirse, tam basamaklardan sağdan kaç tanesinin kesilip sıfıra getirileceğini gösterir.
select Trunc(12.45,-1) from dual;
—————————————
10
Round: bu fonksiyon 2 parametre alır ve ikinci parametresi default olarak sıfırdır. ikinci parametre verilmezse (ya da sıfır verilirse) sayının tam kısmını, kesip attığı kısıma göre yuvarlar.
select Round(12.61), Round(12.23) from dual;
——————————————————–
13 | 12
kesilen kısmın soldan ilk basamağı 5 ve 5′in üzeri ise kalan kısmı bir yukarı yuvarlar. aynı şekilde ikinci parametre verildiği zaman Trunc fonksiyonundaki gibi ondalık ve tam kısımların yuvarlama işlemlerini yapar.
select Round(12.45,1), Round(12.45,-1), Round(12.78,-1), Round(16.23,-1) from dual;
————————————————————————————
12.5 | 10 | 10 | 20
Mod: bu fonksiyon 2 parametre alır ve ilk parametrenin ikinci parametreye bölümünden kalanı verir.
Select Mod(10,3) from dual;
———————————-
1
TO_Number: karakter olarak verilmiş bir değeri sayıya çevirir ve çevirirken sayısal formatları kullanır.
Select TO_Number(’123,456,678.34′, ’999,999,999.99′) from dual;
———————————————————————————-
123456678.34