Fungsi Konkatenasi
dan Konversi
Disusun oleh:
Ir. Ely Rosely, M.B.S. – ely.rosely@tass.telkomuniversity.ac.id
Petugas _
K-001Darma Persada
K-002Susi Aprilia
K-003Beni Pratama
K-004Tina Pelangi
String Karakter Literal
Detail Produk _
Sabun mandi batang harganya 7500
Sabun mandi cair harganya 15000
Sabun cuci sachet harganya 7500
Sabun cuci cair harganya 12000
Sabun mandi kotak harganya 22000
Pelembut pakaian harganya 15000
Pewangi pakaian harganya 12000
Minyak goreng harganya 25000
Operator Quote (q)
• Bila string literal mengandung tanda kutip tunggal juga maka digunakan
operator quote (q) dengan menggunakan quotation mark delimiter.
• Terdapat beberapa delimiter yang bisa dipilih:
[ ], { }, ( ), atau < >.
SELECT department_name ||
q'[, it's assigned Manager Id: ]'
|| manager_id
AS "Department and Manager"
FROM departments;
NAMA_LENGKAP
EllenAbel
SundarAnde
MozheAtkinson
DavidAustin
Konversi Tipe Data
Konversi Tipe Data Implisit
Oracle dapat mengkonversi secara otomatis beberapa tipe data
berikut:
Dari Ke
VARCHAR2 or CHAR NUMBER
VARCHAR2 or CHAR DATE
NUMBER VARCHAR2
DATE VARCHAR2
Konversi Tipe Data Implisit
Contoh:
tgljual > '01-JAN-14' menghasilkan konversi implisit dari
string '01-JAN-14' ke tipe data date.
harga = '2000' menghasilkan konversi implisit dari string
'2000' ke tipe data number 2000.
Konversi Tipe Data Eksplisit
Penggunaan Fungsi TO_CHAR
dengan Date
TO_CHAR(date, 'format_model')
Format_model:
• menggunakan tanda petik tunggal
• nilai bersifat case-sensitive
• dapat menggunakan semua format date yang valid
• dapat menambahkan ‘fm’ untuk menghapus
padded blanks atau suppress leading zeros
• dipisahkan dari nilai date dengan tanda koma
Penggunaan Fungsi TO_CHAR
dengan Date
SELECT kdjual,tgljual,
TO_CHAR(tgljual, 'fmDD Month YYYY') AS tanggal
FROM penjualan;
Format_model:
Elemen Hasil Contoh Hasil
9 Menunjukkan angka 999999 1234
0 Untuk menampilkan angka 099999 001234
nol
$ Menampilkan tanda dollar $999999 $1234
L Menampilkan simbol mata L999999 FF1234
uang lokal
. Menulis titik desimal 999999.99 1234.00
, Menulis koma sebagai tanda 999,999 1,234
ribuan
Contoh Penggunaan Fungsi
TO_CHAR dengan Bilangan
TO_NUMBER(char[, 'format_model'])
TO_DATE(char[, 'format_model'])
Penggunaan Fungsi
TO_NUMBER dan TO_DATE
SELECT nmproduk,
UPPER(CONCAT(SUBSTR (nmproduk, 1, 8), '_baju')) nested
FROM produk
WHERE nmproduk like ‘P%’;
NMPRODUK NESTED _
Pelembut pakaian PELEMBUT_BAJU
Pewangi pakaian PEWANGI _BAJU
Fungsi-fungsi Umum
Beberapa fungsi berikut dapat digunakan untuk semua tipe data dan
berkaitan dengan nilai null:
Fungsi Format Tujuan
NVL NVL (expr1, expr2) Merubah nilai null menjadi nilai aktual
NVL2 NVL2 (expr1, expr2, expr3) Jika expr1 tidak null, maka NVL2 bernilai
expr2. Jika expr1 bernilai null, maka NVL2
bernilai expr3. Argumen expr1 dapat
menggunakan tipe data apapun.
NULLIF NULLIF (expr1, expr2) Membandingkan dua ekspresi, bernilai null
bila keduanya bernilai sama, bernilai expr1
bila keduanya bernilai tidak sama.
COALESCE COALESCE (expr1, Menghasilkan ekspresi non-null yang
expr2, ..., exprn) pertama dari deretan ekspresi
Fungsi NVL
FROM employees;
dimana:
• expr1 akan dihasilkan jika nilainya tidak null
• expr2 akan dihasilkan jika expr1 nilainya null dan expr2 nilainya
tidak null.
• exprn akan dihasilkan jika ekspresi sebelumnya nilainya null.
SELECT last_name,
COALESCE(manager_id,commission_pct, -1) comm
FROM employees
ORDER BY commission_pct;
LAST_NAME COMM
Lee 147
Johnson 149
Marvins 147
Banda 147
Kumar 148
Ande 147
Greene 147
Grant 149
Conditional Expressions