Anda di halaman 1dari 5

Fungsi – Fungsi MSQL

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.

LEFT (string, panjang)


Fungsi ini digunakan untuk memotong string dari sebelah kiri sebanyak
panjang karakter. Contoh:
SELECT LEFT ('tono dina', 4);
Hasil keluarannya:
tono

RIGHT (string, panjang)


Fungsi ini digunakan untuk memotong string dari sebelah kanan sebanyak
panjang karakter. Contoh:
SELECT RIGHT (‘tono Luhur', 4);
Hasil keluarannya:
Uhur

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.

SELECT TRIM(1 FROM 12321) FROM DUAL;


TRI
---
232
SELECT TRIM(LEADING 1 FROM 12321) FROM DUAL;
TRIM
----
2321
SELECT TRIM(TRAILING 1 FROM 12321) FROM DUAL;
TRIM
----
1232
SELECT TRIM(BOTH 1 FROM 12321) FROM DUAL;
TRI
---
232
SELECT TRIM(LEADING '*' FROM '*****BANDUNG*****') FROM DUAL;
TRIM(LEADING
------------
BANDUNG***** - 6 –

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

LOWER : mengubah karakter jadi huruf kecil.


UPPER : mengubah karakter jadi huruf besar.
INITCAP : setiap kata diawali dengan huruf besar.

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 ABS adalah merubah nilai menjadi absolut


Contoh : select abs(-3) maka hasilnya adalah 3
o MOD adalah merupakan operasi modulus
Contoh : select mod(29,9) maka hasilnya adalah 2

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.

SELECT MOD(10,3) FROM DUAL;


MOD(10,3)
----------
1
SELECT LAST_NAME,SALARY,MOD(SALARY,5000)
FROM EMPLOYEES
WHERE JOB_ID = ‘SA_REP’;
LAST_NAME SALARY MOD(SALARY,5000)
------------------------- ---------- ----------------
Tucker 10000 0
Bernstein 9500 4500
Hall 9000 4000
Tuvault 7000 2000
King 10000 0
Sully 9500 4500

Anda mungkin juga menyukai