MySQL REPLACE() fungsi memungkinkan Anda untuk mengganti semua kemunculan substring dengan string lain. Ini memungkinkan Anda untuk melakukan hal-hal seperti, mengganti semua kemunculan satu kata dengan kata lain, dll.
Artikel ini menunjukkan penggunaannya.
Sintaks
Begini sintaksnya:
REPLACE(str,from_str,to_str)
Dimana str adalah string yang berisi substring/s. from_str adalah substring yang ingin Anda ganti dengan string lain. Dan to_str adalah string baru yang akan menggantikan string lama.
Contoh
Berikut ini contoh dasarnya:
SELECT REPLACE('Cats and dogs and cats and rabbits', 'and', 'or') AS Result; Hasil:
+---------------------------------+ | Result | +---------------------------------+ | Cats or dogs or cats or rabbits | +---------------------------------+
Dalam hal ini, kita cukup menukar kata and dengan kata or . Karena ada tiga kemunculan kata itu, ketiganya diganti.
Peka Huruf Besar-kecil
Penting untuk diingat bahwa REPLACE() fungsi peka huruf besar/kecil.
Contoh:
SELECT REPLACE('Cats and dogs and cats and rabbits', 'cat', 'flea') AS Result; Hasil:
+-------------------------------------+ | Result | +-------------------------------------+ | Cats and dogs and fleas and rabbits | +-------------------------------------+
Dalam hal ini, hanya satu contoh cat diganti, karena hanya satu instance yang memiliki case yang tepat. Contoh pertama memiliki huruf besar C jadi tidak cocok.
Hapus Substring
Anda juga dapat menghapus substring sekaligus, cukup dengan mengganti substring dengan string kosong ('' ):
SELECT REPLACE('https://www.database.guide', 'www.', '') AS Result; Hasil:
+-----------------------+ | Result | +-----------------------+ | https://database.guide | +-----------------------+
Perlindungan
Cara lain (mungkin lebih aman) untuk melakukan ini adalah dengan menyertakan beberapa teks di sekitarnya, lalu hapus bagian yang tidak perlu:
SELECT REPLACE('https://www.database.guide', 'https://www.', 'https://') AS Result; Hasil:
+-----------------------+ | Result | +-----------------------+ | https://database.guide | +-----------------------+
Ini menjaga agar tidak menghapus substring yang tidak boleh dihapus secara tidak sengaja. Misalnya, jika kita memiliki URL seperti https://bestwww.com , yang secara tidak sengaja akan berubah menjadi https://bestcom tanpa pengaman.
Perlindungan yang sama dapat diterapkan jika Anda mengganti teks (bukan hanya menghapusnya). Misalnya, ini:
SELECT REPLACE('Land of cats and dogs and sand', ' and ', ' or ') AS Result; Hasil:
+------------------------------+ | Result | +------------------------------+ | Land of cats or dogs or sand | +------------------------------+
Dalam hal ini saya menambahkan spasi sebelum dan sesudah substring dan teks penggantinya.
Jika saya tidak melakukan ini, saya akan berakhir dengan ini:
SELECT REPLACE('Land of cats and dogs and sand', 'and', 'or') AS Result; Hasil:
+----------------------------+ | Result | +----------------------------+ | Lor of cats or dogs or sor | +----------------------------+