Oracle PL/SQL içinde genel programlama dillerinde yer olan ve PL/SQL'e has bir çok özellik fonksiyonlar altında bir araya toplanmıştır. Bu fonksiyonlardan biri de matematikteki mod alma işleminin benzeri olan REMAINDER fonksiyonudur. Remainder sözünü Türkçeye "geri kalan kısım" olarak tercüme edebiliriz.
REMAINDER fonksiyonu Oracle PL/SQL içerisinde parametre olarak verilen bir sayının, yine parametre olarak verilen diğer sayıya bölünmesinden kalan kısmı hesaplayan fonksiyondur.
Fonksiyonun genel kullanımı aşağıdaki gibidir:
REMAINDER ( sayi1, sayi2 )
sayi1: REMAINDER değeri hesaplanacak sayıyı ifade eden parametredir.
sayi2: mod işleminin hangi sayıya göre hesaplanacağını ifade eden parametredir.
Matematiksel olarak REMAINDER işlemi bir sayıyı başka bir sayıya böldüğümüzde tam bölünmeden sonra kalan kısımı ifade eder. Mod alma işleminden farkı ise, matematiksel olarak floor yerine round kullanmasıdır. Aşağıdaki formüller konuyu daha iyi anlatabilmek için karşılaştırmalı olarak verilmiştir.
MOD=> sayi1- sayi2* floor(sayi1/sayi2)
REMAINDER => sayi1- sayi2* round(sayi1/sayi2)
Mod alma işlemi ile ilgili makaleye buradan erişebilirsiniz.
Oracle REMAINDER fonksiyonunun kullanımı ile ilgili bir kaç örnek yapalım.
SELECT
REMAINDER (15,4)
FROM DUAL;
Sonuç: -1
SELECT
REMAINDER (17,4)
FROM DUAL;
Sonuç:1
SELECT
REMAINDER (-25,4)
FROM DUAL;
Sonuç:-1
SELECT
REMAINDER (-27,4.1)
FROM DUAL;
Sonuç:1.7
REMAINDER fonksiyonu aşağıdaki Oracle sürümlerinde yer almaktadır. Çok kullanılmayan bir fonksiyon olsa da gelecek sürümlerde de yer alması muhtemeldir.
-Oracle 12c,
-Oracle 11g,
-Oracle 10g,
-Oracle 9i,
-Oracle 8i
Son olarak konuyu özetleyecek olursak, Oracle REMAINDER fonksiyonu parametre olarak verilen sayının, yine parametre olarak verilen sayıya bölümünden kalan sayıyı ifade eder. Mode işleminden farkı ise yukarıdaki fonksiyonlarda da anlatıldığı gibi FLOOR fonksiyonu yerine ROUND fonksiyonunu kullanmasıdır.
Oracle PL/SQL bünyesinde yer alan tüm numerik ve matematiksel fonksiyonlar listesine buradan erişebilirsiniz.
Oracle PL/SQL bünyesinde yer alan tüm fonksiyonlara ve açıklamalarına ise buradan erişebilirsiniz.
Teşekkürler, blogda faydalı bilgiler var, başarılar dilerim.
YanıtlaSil