MySQL Replace String Functie

Samenvatting: in deze tutorial laten we zien hoe je MySQL REPLACE string functie kunt gebruiken om een substring te vervangen door een andere in een string.

Inleiding tot de MySQL REPLACE string-functie

MySQL biedt u een handige string-functie genaamd REPLACE waarmee u een string in een kolom van een tabel kunt vervangen door een nieuwe string.

De syntaxis van de REPLACE functie is als volgt:

REPLACE(str,old_string,new_string);
Code language: SQL (Structured Query Language) (sql)

De REPLACE functie heeft drie parameters. Het vervangt de old_string door de new_string in de string

Merk op dat er ook een verklaring is die REPLACE heet en gebruikt wordt om gegevens in te voegen of bij te werken. Je moet het REPLACE statement niet verwarren met de REPLACE string functie.

De REPLACE functie is erg handig om tekst in een tabel te zoeken en te vervangen, zoals het bijwerken van een verouderde URL, het corrigeren van een spelfout, etc.

De syntaxis van het gebruik van de REPLACE functie in een UPDATE statement is als volgt:

UPDATE tbl_name SET field_name = REPLACE(field_name, string_to_find, string_to_replace)WHERE conditions;
Code language: SQL (Structured Query Language) (sql)

Note dat bij het zoeken naar tekst om te vervangen, MySQL de hoofdlettergevoelige match gebruikt om een zoekopdracht uit te voeren naar een string die vervangen moet worden.

MySSQL REPLACE string functie voorbeeld

Als u bijvoorbeeld de spelfout wilt corrigeren in de products tabel in de voorbeelddatabase, dan gebruikt u de REPLACE functie als volgt:

UPDATE products SET productDescription = REPLACE(productDescription, 'abuot', 'about');
Code language: SQL (Structured Query Language) (sql)

De query vindt alle voorkomens van een spelfout abuot en vervangt deze door het juiste woord about in de productDescription kolom van de products tabel.

Het is zeer belangrijk op te merken dat in de REPLACE functie, de eerste parameter de kolomnaam is zonder aanhalingstekens (“). Als je de aanhalingstekens bij de veldnaam zet, zoals “field_name”, zal de query de inhoud van die kolom updaten naar “field_name”, wat onverwacht dataverlies veroorzaakt.

De REPLACE-functie ondersteunt geen reguliere expressie, dus als u een tekststring door een patroon wilt vervangen, moet u MySQL door de gebruiker gedefinieerde functie (UDF) van een externe bibliotheek gebruiken, bekijk deze hier MySQL UDF met Regex

  • Was deze tutorial nuttig?
  • JaNee

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *