Function adalah suatu blok PL/SQL yang memiliki konsep sama dengan
procedure, hanya saja pada function terdapat pengembalian nilai (return
value). Karena function dapat mengembalikan sebuah nilai, function
dapat diakses seperti layaknya sebuah variabel biasa.
LTRIM (string)
Fungsi ini digunakan untuk menghilangkan spasi di awal string (kiri).
Contoh:
SELECT LTRIM (' tono Luhur');
Hasil keluarannya:
tono Luhur
RTRIM (string)
Fungsi ini digunakan untuk menghilangkan spasi di akhir string (kanan).
Contoh:
SELECT RTRIM ('tono Luhur ');
Hasil keluarannya:
tono Luhur
TRIM (string)
Fungsi ini digunakan untuk menghilangkan spasi di awal dan akhir string
(kiri dan kanan). Contoh:
SELECT TRIM (' Budi Luhur ');
Hasil keluarannya:
Budi Luhur
TRIM :
Menghilangkan karakter di kanan dan kiri string. TRIM hanya bisa
menghilangkan karakter yang dipinggir.
REPLACE(X,Y[,Z]):
Mengganti string atau substring Y yang ada di string X dengan
string atau substring Z.
Kalau ada karakter J di dalam string ‘JACK and JUE’ ganti dengan
karakter B
SELECT REPLACE('JACK and JUE','J','BL') "Changes"
FROM DUAL;
Changes
--------------
BLACK and BLUE
Ganti karakter ‘a’ yang ada nilai kolom LAST_NAME dengan substring
‘GANTI’
SQL> SELECT LAST_NAME,
2 REPLACE(LAST_NAME,'a','GANTI') AS "CHANGE"
3 FROM EMPLOYEES
4 WHERE DEPARTMENT_ID=20;
LAST_NAME CHANGE
--------------- --------------------
Hartstein HGANTIrtstein
Fay FGANTIy
- 7
CASE-MANIPULATION
YEAR (tanggal)
Fungsi ini digunakan untuk mendapatkan bilangan tahun dari suatu
tanggal yang diberikan. Contoh:
SELECT YEAR (now());
HOUR (waktu)
Fungsi ini digunakan untuk mendapatkan bilangan jam dari suatu
parameter waktu yang diberikan. Contoh:
SELECT HOUR (now());
Hasil keluarannya:
20
o FLOOR adalah nilai yang lebih besar dari nilai yang di fungsikan
Contoh : select floor (-1.5) maka hasilya adalah -2
o CEILING adalah nilai yang lebih kecil dari nilai yang di fungsikan
Contoh : select ceiling(1.5) maka hasilnya adalah 2
o ROUND adalah membulatkan dengan ketepatan tertentu
Contoh : select round(1.5,0) maka hasilnya adalah 2
o POW adalah fungsi untuk memangkatkan sebuah numeric
Contoh : select pow(4,2) maka hasilnya adalah 16
o TRUNCATE adalah pembulatan pangkas
Contoh : select truncate(1.99,1) maka hasilnya 1.9 jika select
truncate(1.99,0) maka hasilnya 1
o GREATEST adalah mencari nilai yang terbesar
Contoh : select greatest(1,2,3,4,5) maka hasilnya adalah 5
o COUNT adalah menghitung jumlah record dalam sebuah table
Contoh : select count(nip) as hsl from data_penjualan maka hasilnya
adalah 4
o MAX dan MIN adalah untuk mengetahui nilai terbesar dan terkecil
Contoh : select max(total) as terbesar,min(total) as terkecil from
data_penjualan
ROUND(X,Y)
Membulatkan X dengan presisi desimal Y.
Membulatkan dua angka dibelakang :
ROUND(45.923,2) 45.92
Membulatkan menjadi integer atau tidak ada nilai desimalnya :
ROUND(45.923,0) 46
Jika nilai Y minus (-) maka pmbulatan dilakukan di depan koma.
Membulatkan satuan menjadi puluhan (-1) nilai tengahnya adalah 5:
ROUND(45.923,-1) 50
Membulatkan satuan menjadi puluhan (-2) nilai tengahnya adalah 50:
ROUND(45.923,-2) 0, kenapa 0 ? karena 45 masih dibawah 50.
Kesimpulan :
Jika -1 perhatikan angka satuan pada angka di depan koma, jika >=5
bulatkan ke angka puluhan.
Jika -2 perhatikan angka puluhan pada angka di depan koma, jika
>=50 bulatkan ke angka ratusan.
Jika -3 perhatikan angka ratusan pada angka di depan koma,
jika >= 500 bulatkan ke angka ribuan.
Jika -4 perhatikan angka ribuan pada angka di depan koma, jika >=
5000 bulatkan ke angka puluhan ribu.
SELECT ROUND(45.923,2),
ROUND(45.923,0),
ROUND(45.923,-1),
ROUND(45.923,-2
TRUNC(X,Y)
Memotong x dengan presisi desimal y tanpa pembulatan seperti ROUND.
SELECT TRUNC(45.923,2), TRUNC(45.923,0),TRUNC(45.923,-1)
FROM DUAL;
TRUNC(45.923,2) TRUNC(45.923,0) TRUNC(45.923,-1)
--------------- --------------- ----------------
45.92 45 40
MOD(X,Y)
Mengembalikan sisa pembagian x dengan y.