Thursday, March 24, 2016

[Tips] str_replace / fungsi replace pada MySQL

Baru-baru ini ada kebutuhan buat cleansing data di MySQL untuk mengubah sebagian konten di beberapa row pada database. Kalau pakai PHP sih tinggal di looping, str_replace.

Ternyata eh ternyata MySQL sudah menyediakan fungsinya. Jadi bisa langsung eksekusi query di MySQL. Lumayan lah kalau data sudah banyak, fungsi ini bisa menghemat waktu untuk kebutuhan yang simpel untuk update data.

Misal kita memiliki sebuah tabel berita dengan kolom isi berita yang didalamnya mungkin ada hyperlink ke website lama dan kita ingin di tiap isi berita link lama akan diganti dengan link baru

UPDATE berita  
SET isi_berita = REPLACE(isi_berita , 'http://linkjadul.com', 'http://linkbaru.com');

MySQL sendiri memang banyak menyediakan fungsi yang lain seperti fungsi yang ada di PHP seperti:

reverse = strrev  , untuk membalik string seperti ayu jadi uya
length = strlen  , untuk menghitung panjang string
substr = substr , untuk mengambil bagian dari string
dan masih banyak lagi silakan cari sendiri ya.

Bahkan fungsi soundex pada PHP pun ada padanannya di MySQL. Walaupun hasil yang diperoleh berbeda antara soundex pada PHP dan MySQL.

No comments: