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.