Fungsi Ganti Oracle

Fungsi Ganti Oracle



Dalam tutorial ini, kita akan belajar bagaimana menggunakan fungsi replace() di Oracle untuk mengganti semua kemunculan substring dengan kumpulan karakter lainnya.

Sintaks Fungsi Oracle Replace()

Kode berikut menunjukkan sintaks dari fungsi replace() :







MENGGANTI ( string_sumber, substring, string_pengganti ) ;



Fungsi menerima tiga parameter:



  1. source_string – menentukan string sumber yang akan dicari.
  2. Substring – menentukan substring yang akan diganti.
  3. replacement_string – menetapkan string atau set karakter yang diganti di tempat substring. Ini adalah parameter opsional. Jika nilai parameter replacement_string tidak ada, fungsi akan menghapus semua kemunculan substring dari string sumber.

Demikian pula, jika substring kosong, fungsi tidak melakukan apa pun dan mengembalikan source_string.





Fungsi mengembalikan tipe string dengan semua kemunculan substring diganti dengan replacement_string.

Contoh Fungsi Oracle Replace()

Contoh berikut menunjukkan bagaimana fungsi berperilaku di bawah berbagai jenis parameter dan input:



Contoh 1 – Ganti Kemunculan Substring

Contoh di bawah mengilustrasikan penggunaan utama fungsi replace() dengan semua parameter input yang disediakan.

Pilih mengganti ( 'Pengembangan basis data Oracle' , 'ab' , 'xy' ) SEBAGAI diganti
dari ganda;

Kueri di atas menggunakan fungsi replace() untuk mengganti karakter (ab) dengan (xy). Keluaran yang dihasilkan:

DIGANTI |
--------------------------- +
Pengembangan datxyase Oracle |

Contoh 2 – Menggunakan Fungsi Ganti untuk Menghapus Substring

Seperti yang disebutkan, kita dapat menggunakan fungsi replace() untuk menghapus substring dari string sumber. Ini terjadi ketika kami tidak memberikan nilai dari substring seperti yang ditunjukkan:

PILIH ganti ( 'https://linuxhint.com' , 'https://' ) SEBAGAI d DARI ganda;

Hasil:

D |
--------------+
linuxhint.com |

Contoh 3 – Ganti Nilai dalam Tabel

Kita sering menggunakan fungsi replace() untuk mengganti nilai dalam tabel database. Ambil contoh tabel yang ditunjukkan:

buat tabel sample_data
(
Indo nomor,
first_name  varchar2 ( lima puluh ) ,
ip_address  varchar2 ( dua puluh ) ,
btc_address varchar2 ( lima puluh ) ,
credit_card varchar2 ( lima puluh ) ,
pengenal  varchar2 ( 40 ) ,
kendala kunci primer sample_pk ( Indo )
) ;
masukkan ke sample_data ( Indo , nama_pertama, alamat_ip, alamat_btc, kartu_kredit, pengidentifikasi )
nilai-nilai ( sebelas , 'Wallas' , '169.158.70.77' , '1CNz5d1d5SC8SaR6dFSVihwztqYx5Fg77q' , '4017955174552' ,
'26811d77-0a3a-4397-bc33-f7835f7c7ab9' ) ;
masukkan ke sample_data ( Indo , nama_pertama, alamat_ip, alamat_btc, kartu_kredit, pengidentifikasi )
nilai-nilai ( 12 , 'Ian' , '148.190.10.178' , '1ADxBV7n9JeDDcb8pL24J9wV54mcSRHdu7' , '4017956704480827' ,
'a69fe590-bc1b-4001-8ff8-154bcdb5802d' ) ;
masukkan ke sample_data ( Indo , nama_pertama, alamat_ip, alamat_btc, kartu_kredit, pengidentifikasi )
nilai-nilai ( 13 , 'Paskah' , '150.86.18.140' , '126hVKom2Foy9LEA6M4pUAT1h97c2rSD8B' , '4017953296787867' ,
'34ac9385-9e1e-4d13-9537-c4eedb9f2c35' ) ;

Pernyataan sebelum pembaruan:

PILIH FIRST_NAME, IP_ADDRESS, CREDIT_CARD DARI SAMPLE_DATA sd;

Kita dapat menggunakan fungsi replace() untuk mengganti semua kejadian 4 di kolom credit_card dengan 5.

UPDATE SAMPLE_DATA SET CREDIT_CARD = REPLACE ( KARTU KREDIT, '4' , '5' ) ;

Setelah pernyataan pembaruan:

Dalam tabel yang dihasilkan, kita dapat memverifikasi bahwa nilai dalam kolom credit_card telah diganti dari 4 menjadi 5.

Kesimpulan

Melalui tutorial ini, Anda memahami cara kerja fungsi replace() di database Oracle.