SQL

¿Cómo remplazar una cadena de caracteres por otra en SQL Server?

Estrada Web Group
Administrador
¿Cómo remplazar una cadena de caracteres por otra en SQL Server?

En este tutorial, aprenderás a usar la función REPLACE() de SQL Server para reemplazar todas las veces que aparezca una palabra, frase o cadena de caracteres por otra palabra o frase dentro de una cadena de caracteres.

REPLACE(input_string, substring, new_substring);

Explicación de la sintaxis:

  •      input_string es cualquier expresión de cadena a buscar.
  •      substring es la subcadena que se va a reemplazar.
  •      new_substring es la cadena de reemplazo.

La función REPLACE() devuelve una nueva cadena en la que todas las apariciones de la subcadena es reemplazada por el valor de new_substring. Devuelve NULL si algún argumento es NULL.

Ejemplos de SQL Server REPLACE()

Veamos algunos ejemplos del uso de la función REPLACE() para comprender cómo funciona.

A) Uso de la función REPLACE() con cadenas literales

El siguiente ejemplo usa la función REPLACE() para reemplazar aprendiz por experto en la cadena 'Serás un aprendiz siguiendo los tutoriales de Estrada Web Group.':
 

SELECT

    REPLACE(
        'Serás un aprendiz siguiendo los tutoriales de Estrada Web Group, inicia ahora y conviértete en un aprendiz.',
        'aprendiz',
        'experto'

    ) result;

Resultado:

Serás un experto siguiendo los tutoriales de Estrada Web Group, inicia ahora y conviértete en un experto.

Como puede ver en el resultado, todas las ocurrencias de aprendiz fueron reemplazadas por experto.

B) Uso de la función REPLACE() con columnas de tabla

En este ejemplo, utilizaremos la tabla sales.customers de la base de datos de muestra:

sql replace

Este ejemplo llama a la función REPLACE()dos veces para formatear el número de teléfono en un nuevo formato, se utiliza las instruccionse SELECT, WHERE, y ORDER BY:

SELECT first_name, last_name, phone, REPLACE(REPLACE(phone, '(', ''), ')', '') phone_formatted
FROM   
sales.customers
WHERE phone IS NOT NULL
ORDER BY first_name, last_name;

La siguiente imagen muestra el resultado parcial:

SQl Server emmplazar una cadena

Cómo funciona.

  •      La primera llamada REPLACE (phone, '(', '') reemplaza el carácter ‘(‘ en el número de teléfono por un espacio, por ejemplo, (916) 381-6003 -> 916) 381-6003
  •      La segunda llamada reutiliza el resultado de la primera llamada y reemplaza el carácter ")" por un espacio, por ejemplo, 916) 381-6003 -> 916 381-6003.

C) Usar la función REPLACE() para corregir datos en tablas

La función REPLACE() se usa a menudo para corregir datos en una tabla. Por ejemplo, reemplazando un enlace desactualizada.

Sintaxis:

UPDATE     table_name
SET
    column_name = REPLACE(column_name, 'old_string','new_string')
WHERE
    condition;

Por ejemplo, para cambiar el código de ciudad de los números de teléfono del 551 al 831, usa la siguiente declaración:

UPDATE
    sales.customers
SET
    phone = REPLACE(phone,'(551)','(831)')
WHERE
    phone IS NOT NULL;

Ten en cuenta que debes hacer una copia de seguridad de la tabla antes de realizar reemplazos, por cualquier problema o error al ejecutar la función REPLACE().

En este tutorial, has aprendido a usar la función REPLACE() de SQL Server para reemplazar todas las apariciones de una subcadena, dentro de una cadena, por una nueva subcadena.

Compartir artículo:

Más artículos geniales

Cómo limitar el número de filas que me regresa una consulta en SQL Server utilizando la cláusula OFFSET FETCH

Cómo limitar el número de filas que me regresa una consulta en SQL Server utilizando la cláusula OFFSET FETCH

Las cláusulas OFFSET y FETCH se utilizan con la cláusula ORDER BY. Las cuales te permiten limitar el número de filas que devolverá una consulta.

Ver artículo completo
¿Qué es PRIMARY KEY en SQL Server y cómo funciona?

¿Qué es PRIMARY KEY en SQL Server y cómo funciona?

En este tutorial de SQL Server, aprenderá a usar la restricción PRIMARY KEY de SQL Server para crear una llave primaria para una tabla.

Ver artículo completo
Aprende a utilizar subconsultas o subquery en SQL

Aprende a utilizar subconsultas o subquery en SQL

Una subconsulta es una declaración SQL que tiene otra consulta SQL incrustada en la cláusula WHERE o HAVING.

Ver artículo completo

Manténgase actualizado

Obtenga excelente contenido en su bandeja de entrada todas las semanas.
Solo contenido excelente, no compartimos su correo electrónico con terceros.
Subir al inicio de la pantalla ;