sql >> Base de Datos >  >> RDS >> Database

Cómo reemplazar parte de una cadena en SQL

Problema:

Le gustaría reemplazar parte de una cadena con otra cadena.

Ejemplo:

Nuestra base de datos tiene una tabla llamada investor con datos en las siguientes columnas:id , company y phone .

id empresa teléfono
1 Gran Mercado 123–300-400
3 El Restaurante Soleado 123–222-456
4 Mi banco 123-345-400

Nos gustaría cambiar el formato del número de teléfono de cada empresa reemplazando el carácter de guión por un espacio.

Solución:

SELECT REPLACE( phone, '-', ' ' ) as new_phone
FROM investor;

La consulta devuelve una lista de números de teléfono con espacios en lugar de guiones como separadores:

nuevo_teléfono
123 300 400
123 222 456
123 345 400

Discusión:

Si desea reemplazar una subcadena con otra cadena, simplemente use el REPLACE función. Esta función toma tres argumentos:

  • La cadena a cambiar (que en nuestro caso era una columna).
  • La subcadena a reemplazar.
  • La cadena con la que reemplazar la subcadena especificada.

En el siguiente ejemplo, reemplazamos el adjetivo 'Grande' en company columna con 'Pequeño'.

SELECT REPLACE( company, 'Big', 'Small' ) as new_company
FROM investor
WHERE id = 1;

Esta consulta muestra el nuevo nombre de la empresa para el inversor con id = 1 .

nueva_empresa
Mercado pequeño