String Functions in Oracle/PLSQL

Tulisan ini berisi penjelasan disertai contoh mengenai fungsi-fungsi dalam Oracle/PLSQL yang berkaitan dengan manipulasi string. Adapun isi dari tulisan ini terinspirasi tulisan-tulisan yang ada didalam techonthenet. Daripada setiap kali membutuhkan fungsi-fungsi seperti ini harus searching di google maka lebih baik sekalian saya buat tulisannya saja, agar lain kali tidak perlu browsing-browsing lagi dan lebih Alhamdulillah lagi kalau ada yang dapat mengambil manfaat dari tulisan ini🙂

1. Concat

Concat merupakan kependekan dari Concatenate, yang bisa diartikan merangkai. Fungsi concat adalah untuk merangkaikan 2 buah string menjadi satu string. Syntaxnya adalah:

concat( string1, string2 )

string1 adalah string pertama yang akan dirangkai.

string2 adalah string kedua yang akan dirangkai.

Contoh:

Select concat(‘Purna’, ‘ Atmaja’) from dual;

— akan menghasilkan ‘Purna Atmaja’

Select concat(concat(nama_depan, ‘ ‘),nama_belakang) as nama_lengkap from PEGAWAI

— akan menghasilkan rangkaian string dari nilai nama_depan diikuti spasi diikuti nama_belakang

2. Substr

Substr yang merupakan kependekan dari Substring merupakan fungsi di oracle yang digunakan untuk mengambil suatu bagian dari sebuah string. Syntaxnya adalah:

substr( string, posisi_awal, [panjang] )

string adalah string induk yang sebagian stringnya akan diambil.

posisi_awal adalah posisi dari string yang akan diambil.

panjang menunjukkan jumlah karakter yang akan diambil dan bersifat optional. Jika parameter ini diisi, maka substr akan menghasilkan semua string mulai dari posisi_awal.

Catatan:

Jika posisi_awal adalah 0, maka substr akan mengambil string mulai dari posisi karakter pertama.

Jika posisi_awal adalah positif, maka substr akan memulai mengambil karakter dari kiri ke kanan.

Jika posisi_awal adalah negatif, maka substr akan memulai mengambil karakter dari kanan ke kiri.

Jika panjang adalah negatif, maka substr akan menghasil nilai NULL.

Contoh:

select substr(‘Purna Atmaja’, 7, 2) from dual — akan menghasilkan ‘At’

select substr(‘Purna Atmaja’, 7) from dual — akan menghasilkan ‘Atmaja’

select substr(‘Purna Atmaja’, 1, 5) from dual — akan menghasilkan ‘Purna’

select substr(‘Purna Atmaja’, -12, 5) from dual — akan menghasilkan ‘Purna’

select substr(‘Purna Atmaja’, -6, 2) from dual — akan menghasilkan ‘At’

select substr(‘Purna Atmaja’, -6) from dual — akan menghasilkan ‘Atmaja’

3. Replace

Replace didalam Oracle/PLSQL digunakan untuk mengganti suatu urutan karakter dengan suatu set karakter yang lain.

Syntaxnya adalah:

replace( string1, string_yg_diganti, [string_pengganti] )

string1 adalah string induk/sumber.

string_yg_diganti adalah string yang akan dicari didalam string1.

string_pengganti bersifat optional. Jika diisi, semua string_yg_diganti yang ada didalam string1 akan diganti dengan string_pengganti. Jika tidak diisi, maka semua string_yg_diganti yang ada didalam string1 akan dihapus.

Contoh:

select replace(‘Purna Atmaja’, ‘u’, ‘oe’) from dual — akan menghasilkan ‘Poerna Atmaja’

select replace(‘Purna Atmaja’, ‘Atmaja’) from dual — akan menghasilkan ‘Purna ‘

select replace(‘048Purna048’, ‘048’) from dual — akan menghasilkan ‘Purna’

select replace(‘Atmaja’,’a’,’o’) from dual –akan menghasilkan ‘Atmojo’

4. Lower dan Upper

Didalam Oracle/PLSQL, fungsi lower digunakan untuk mengubah semua huruf dalam suatu string menjadi huruf kecil, dan sebaliknya, fungsi upper digunakan untuk mengubah menjadi huruf besar. Syntaxnya adalah:

lower (string1)

upper(string1)

string1 adalah string yang akan diubah menjadi huruf kecil/besar.

Contoh:

select lower(‘Purna Atmaja’) from dual — akan menghasilkan ‘purna atmaja’

select lower(‘PURNA ATMAJA’) from dual — akan menghasilkan ‘purna atmaja’

select upper(‘Purna Atmaja’) from dual — akan menghasilkan ‘PURNA ATMAJA’

select upper(‘purna atmaja’) from dual — akan menghasilkan ‘PURNA ATMAJA’

5 Balasan ke String Functions in Oracle/PLSQL

  1. fitrianingrum mengatakan:

    mas purna, klo ga salah… yg kek gini ada juga ya?
    select nama_depan||’ ‘||nama_belakang as nama_lengkap from PEGAWAI

    ** /me lupa lupa inget **

  2. purna mengatakan:

    Yes, smart girl… || dapat juga digunakan untuk merangkai string.
    Gak salah dah mitrais ngrekrut….🙂

  3. Huri mengatakan:

    Mas purna, kalau mau insert string berupa tanda petik tunggal (‘) gimana mas biar kaga error?

  4. purna mengatakan:

    Huri,
    Untuk mengescape karakter petik tunggal, tinggal nambahi petik satu lagi didepannya. Sebagai contoh, coba statement berikut:

    SELECT ‘PurNa”s Blog’ AS TEXT FROM DUAL

    Hasilnya:
    TEXT
    —————————————-
    PurNa’s Blog

  5. f***'ng system mengatakan:

    salam kenal, minta bantuannya ya mas…
    masalahknya kayak gini ..
    ada suatu string misalnya : daftar#desarockcity#97898789
    ditentukan : daftar = string1,
    desarockcity=string2,
    97898789=string3
    pertanyaannya : bagaimana caranya kita mendapatkan string yang berada sebelum tanda # ,string yang berada setelah # pertama dan sebelum # ke dua, dan string yang berada setelah # ketiga, jika string1,string2 dan string3 tidak mutlak seperti itu, artinya dapat berubah-ubah sehingga panjang stringnya tidak sama.

    mohon bantuannya mas….thanks

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: