Postingan kali ini akan membahas lanjutan mengenai
sistem manajemen basis data (DBMS) Oracle yang sudah sedikit diulas pada
postingan beberapa minggu lalu. Ulasan kali ini akan lebih menjelaskan teknik
dari database Oracle tersebut. Mengenai teknik sebenarnya sangat banyak yang
harus diulas untuk hal pembuatan database menggunakan DBMS Oracle, namun tetap
saja dalam setiap operasinya pasti memerlukan fungsi-fungsi dasar yang akan
dijelaskan di tulisan ini.
Oracle menyediakan
berbagai macam fungsi dasar yang dapat digunakan dalam operasi query, misalkan pada perintah select. Ada dua
macam fungsi yang didukung Oracle, Fungsi SQL dan user define function. Untuk
fungsi SQL, dapat dikategorikan dalam fungsi dengan satu hasil satu baris data dan fungsi dengan
satu hasil untuk banyak data.
A.
Fungsi
dengan Satu Data Satu Hasil
Yang dimaksud
dengan fungsi dengan satu hasil adalah fungsi yang hanya menghasilkan satu baris hasil untuk setiap baris data. Fungsi
ini dapat digunakan pada WHERE, START WITH, CONNECT
BY. Ada kelompok yang masuk dalam fungsi ini.
1.
Bilangan
Fungsi bilangan digunakan untuk menerima
data dalam bentuk bilangan dan mengeluarkan hasil juga
dalam bentuk bilangan. Kebanyakan dari fungsi ini memiliki ketelitihan sampai
38 digit. Fungsi transcendental COS,
COSH,
EXP,
LN,
LOG,
SIN,
SINH,
SQRT,
TAN,
and TANH memiliki ketelitihan sampai 36 digit. Fungsi
transcendental ACOS, ASIN, ATAN,
and ATAN2 memiliki ketelitihan sampai 30 digit.
ABS(n)
, nilai absolute
ACOS(n)
, nilai arc cosinus
ADD_MONTHS(d,n) ,
tanggal d ditambah bulan n
ATAN
(n) , nilai arc tangen
BITAND
(n,m) , perhitungan and dari bit
CEIL
(n) , integer terkecil yang lebih besar atau sama dengan n
COS
(n) , fungsi cos
COSH
(n) , cos hiperbola
EXP
(n) , exponensial
FLOOR
(n) , integer terbesar yang lebih kecil atau sama dengan n
LN
(n) , logaritma natural
LOG
(m,n) , logaritma basis m
MOD
(m,n) , sisa hasil bagi
POWER
(m,n) , m pangkat n
ROUND
(m,n) , pembulan ke atas n digit desimal
SIGN
(n) , mencari tanda bilangan
SIN
(n) , fungsi sinus
SINH
(n) , fungsi hiperbolik sinus
SQRT
(n) , fungsi akar
TAN
(n) , tangensial
TANH
(n) , hiperbolik tangensial
TRUNC
(m,n) , pembulatan ke bawan n digit
Contoh,
Select sin(1,24) from dual;
Select add_month(sysdate,2) dua_bulan_lagi from dual;
Select round(123.456) from dual;
2.
String
o Nilai string mengembalikan string
CHR(n)
, mengeluarkan kode char dari bilangan n
CONCAT(m,n)
, menggabungkan m dengan n
INITCAP(n)
, mengubah huruf awal menjadi huruf besar
LOWER
(n) , mengubah menjadi huruf kecil semua
LPAD
(n,m,x) , menngeluarkan string n rapat kanan sejumlah m, mengisi spasi dengan x
LTRIM
(n) , menghilangkan spasi pada sisi kiri
NLS_INITCAP
, huruf awal besar, dan dilakukan transfer bentuk
NLS_LOWER
, huruf kecil semua dan dilakukan transfer bentuk
NLSSORT
NLS_UPPER
, huruf besar semua dan dilakukan transfer bentuk
REPLACE
(n,m,x) , mengubah string m dalam n menjadi x
RPAD
(m,n,x) , rapat kiri sejumlah n dan mengisi spasi dengan x
RTRIM
(n) , membuang spasi sebelah kanan
SOUNDEX
SUBSTR
(m,n,x) , mengambil sebagain string m, mulai n sebanyak x
SUBSTRB
TRANSLATE
(n,m,x) , menterjemahkan string n sesuai tabel konversi m ke x
TRIM
(n) , menghilangkan spasi di kiri dan kanan
UPPER(n)
, mengubah ke huruf besar
Contoh,
Select upper(‘ini huruf kecil’) huruf_besar from dual;
Select substr(‘ini suatu kalimat’,5,4) from dual;
ASCII
(char) , mengembalikan nilai ascii
INSTR
(n,m,x) , mencari posisi string m dalam string n mulai x
INSTRB
LENGTH
, menghitung panjang string
LENGTHB
Contoh
Select length(‘ini sebuah kalimat’) panjang from dual;
Select instr(‘saudara sekalian’,’dara’,1) posisi from
dual;
3.
Fungsi
Tanggal
ADD_MONTHS
LAST_DAY
MONTHS_BETWEEN
NEW_TIME
NEXT_DAY
ROUND
(date function)
SYSDATE
TRUNC
(date function)
Contoh,
Select sysdate waktu_sekarang from dual;
Select next_day(sysdate) besok from dual;
4.
Fungsi
Konversi
CHARTOROWID
CONVERT
HEXTORAW
NUMTODSINTERVAL
NUMTOYMINTERVAL
RAWTOHEX
ROWIDTOCHAR
TO_CHAR
(date conversion)
TO_CHAR
(number conversion)
TO_DATE
TO_LOB
TO_MULTI_BYTE
TO_NUMBER
TO_SINGLE_BYTE
TRANSLATE
... USING
Contoh
Select to_date(‘12-01-2002’,’dd-mm-yyyy’) from dual;
Select to_char(sysdate,’dd’) tanggal,
to_char(sysdate,’mm’) bulan,
to_char(sysdate,’yyyy’) tahun from dual;
B.
Aggregate
Fungsi aggregate
adalah fungsi yang mengolah lebih dari satu baris data menjadi satu hasil.
Hasil dari perhitungan dipengaruhi oleh jumlah
pengelompokan (GROUP BY) perhitungan. Kalau dikelompokkan
dan terdapat lebih dari satu kelompok, maka jumlah hasilnya sesuai dengan jumlah kelompok yang ada.
AVG , menghitung rata-rata
CORR
COUNT , menghitung jumlah baris
COVAR_POP
COVAR_SAMP
GROUPING
MAX , mencari nilai tertinggi
MIN , mencari nilai terendah
REGR_ (linear regression) functions
STDDEV
STDDEV_POP
STDDEV_SAMP
SUM , menghitung jumlah nilai
VAR_POP
VAR_SAMP
VARIANCE
Contoh,
Select sum(sal) total_gaji from emp;
Select count(empno) total_pegawai
from emp;
Select count(sal) jumlah_pegawai
,deptno from emp group by deptno;


0 komentar:
Posting Komentar