Reemplazar una cadena en MySQL

Preet Sanghavi 28 marzo 2022
Reemplazar una cadena en MySQL

En este tutorial, nuestro objetivo es explorar cómo reemplazar una cadena en MySQL.

En tablas específicas en MySQL, periódicamente necesitamos actualizar ciertos valores de cadena para reflejar el estado actualizado o la lista de productos de una empresa en una tabla particular de una base de datos. MySQL nos proporciona una función REPLACE() para ayudarnos a lograr esta tarea de manera eficiente.

Entendamos más sobre esta función REPLACE().

El método REPLACE() en MySQL sustituye todas las incidencias de un valor de cadena con una nueva cadena. Esta función toma tres parámetros de entrada.

Primero está el nombre de la columna desde donde deseamos encontrar el valor de la cadena. El segundo es el valor de la cadena en sí mismo que debe reemplazarse y, por último, pasamos el valor de la cadena de reemplazo.

La sintaxis de la función REPLACE() es la siguiente.

REPLACE(column_name, old_string_to_be_replaced, new_string_value)

Nota: El método REPLACE() tiene en cuenta la distinción entre mayúsculas y minúsculas.

Vamos a entender cómo funciona este método.

Antes de comenzar, creamos un conjunto de datos ficticio para trabajar. Creamos una tabla, student_details, junto con algunas filas.

-- create the table student_details
CREATE TABLE student_details(
  stu_id int,
  stu_firstName varchar(255) DEFAULT NULL,
  stu_lastName varchar(255) DEFAULT NULL,
  primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName) 
 VALUES(1,"Preet","Sanghavi"),
 (2,"Rich","John"),
 (3,"Veron","Brow"),
 (4,"Geo","Jos"),
 (5,"Hash","Shah"),
 (6,"Sachin","Parker"),
 (7,"David","Miller");

Reemplazar cadena en MySQL

En la tabla student_details, intentemos reemplazar stu_firstName con Preet a Preeti. Podemos realizar esta operación usando la siguiente consulta.

SELECT REPLACE(stu_firstName, 'Preet', 'Preeti') as new_firstNames from student_details;

El resultado de la consulta sería el siguiente.

new_firstNames
Preeti
Rich
Veron
Geo
Hash
Sachin
David

Nota: En la consulta anterior, usamos new_firstNames para indicar la lista actualizada de nombres de los estudiantes con la palabra clave AS en MySQL.

La función REPLACE() para esta tarea es la declaración UPDATE en MySQL que puede ayudarnos a modificar la cadena en la tabla. Para reemplazar una cadena dentro de la tabla, podemos usar la siguiente consulta.

UPDATE name_of_the_table set column_name =REPLACE(column_name,'old_string','new_string');

Para reemplazar el nombre Preet del estudiante en la tabla student_details, podemos ejecutar la siguiente consulta para realizar el trabajo.

update student_details set stu_firstName=REPLACE(stu_firstName,'Preet','Preeti');

La salida de la consulta anterior nos daría el siguiente resultado.

stu_id	stu_firstName	stu_lastName
1	      Preeti	    Sanghavi
2	      Rich	        John
3	      Veron	        Brow
4	      Geo	        Jos
5	      Hash	        Shah
6	      Sachin	    Parker
7	      David	        Miller

Como indica la salida, el primer nombre con el valor de cadena Preet y el stu_id como 1 se ha actualizado a Preeti.

Por lo tanto, con la ayuda del método REPLACE, podemos renombrar cadenas en una tabla en MySQL de manera eficiente.

Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub

Artículo relacionado - MySQL String