Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MySQL REPLACE() – Ganti Semua Contoh Substring dengan String lain

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('http://www.database.guide', 'www.', '') AS Result;

Hasil:

+-----------------------+
| Result                |
+-----------------------+
| http://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('http://www.database.guide', 'http://www.', 'http://') AS Result;

Hasil:

+-----------------------+
| Result                |
+-----------------------+
| http://database.guide |
+-----------------------+

Ini menjaga agar tidak menghapus substring yang tidak boleh dihapus secara tidak sengaja. Misalnya, jika kita memiliki URL seperti  http://bestwww.com , yang secara tidak sengaja akan berubah menjadi http://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 |
+----------------------------+


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP MySQLI Mencegah Injeksi SQL

  2. Tidak Dapat Membuat Model Data Entitas - menggunakan MySql dan EF6

  3. PDO fetchSemua pasangan nilai kunci grup ke dalam array assoc

  4. Apa yang Setara dengan DATALENGTH() di MySQL?

  5. Cara mengimpor file excel ke database MySQL