Reemplazar una cadena de texto por otra en SQL

Usuario: RiCkY
Post: Reemplazar una cadena de texto por otra en SQL

Bueno, resulta que hoy me vi enfrentado a un gran problema por varias horas, y no sabía como resolverlo. También busqué la solución en internet pero no fue fácil encontrarla. Tengo que agradecer a Seba Urbina por darme éste link que me fue de gran ayuda.

Resulta lo siguiente, necesitaba cambiar todos los links dentro de un foro con tal de que los mensajes que antes decian dominio1.com pasen a decir dominio2.com y no sabía como hacerlo.

Por suerte encontré la manera de hacerlo. Es de la siguiente:

UPDATE tabla SET campo = REPLACE(campo,'texto a buscar','texto a reemplazar')
donde obviamente tabla es el nombre de la tabla, campo el nombre del campo a buscar la cadena, y texto a buscar es el texto que queremos buscar y el texto a reemplazar es la cadena a reemplazar luego de la consulta. Por ejemplo, en un foro SMF, si ejecuto lo siguiente

UPDATE smf_messages SET body REPLACE(body,'unforoparatodos.com','unforoparatodos.com.ar')

voy a reemplazar todas las apariciones de unforoparatodos.com por unforoparatodos.com.ar. Esto significa, si tenia un link que decia http://www.unforoparatodos.com/foro/algo-mas se va a convertir en http://www.unforoparatodos.com.ar/foro/algo-mas.

Demasiado útil para mi. Espero que para ustedes también

Tags: ,

2 comentarios:

dark dijo...

Esa función en útil en algunos casos, pero supongamos la cadena "te voy a preparar un emparedado de tomate", y queremos cambiar la palabra "te" por "me" al aplicar la función replace, el resultado sería "me voy a preparar un emparedado de tomame", en este caso esa función es inútil y no nos da el resultado que necesitamos.

Unknown dijo...
Este comentario ha sido eliminado por el autor.

Publicar un comentario