Reemplazar una cadena en SQL

Reemplazar Una Cadena En Sql



Los datos de texto o cadenas, como los llaman los desarrolladores, son un componente importante de cualquier programa funcional. Esto no es diferente cuando se trata de almacenar datos. Casi todas las bases de datos contienen algún tipo de información de texto, como nombres, registros, etc.

Como tal, la manipulación de cadenas es una tarea común que implica manipular y transformar los valores de las cadenas a un formato específico.

Una de las funciones más poderosas de SQL que se ocupa de operaciones de cadenas es la función REGEXP_REPLACE(). Esta función nos permite realizar la búsqueda y reemplazo basados ​​en expresiones regulares. Si está familiarizado con las expresiones regulares, sabrá lo poderosa que puede ser esta función.







En este tutorial, aprenderemos cómo podemos usar esta función para buscar y reemplazar cadenas en la base de datos SQL.



SQL REGEXP_REPLACE

SQL REGEXP_REPLACE() es una función que nos permite realizar la coincidencia y el reemplazo de patrones basados ​​en expresiones regulares dentro de una cadena determinada.



Una expresión regular o expresión regular es un patrón establecido y marcadores de posición que nos permite hacer coincidir y manipular las cadenas o subcadenas que siguen un patrón específico.





Es bueno tener en cuenta que cada motor de base de datos puede implementar ligeramente la sintaxis y funcionalidad de la función.

Sin embargo, podemos expresar su sintaxis de la siguiente manera:



REGEXP_REPLACE(cadena_entrada, patrón, reemplazo [, banderas])

Los parámetros de la función se expresan de la siguiente manera:

  1. input_string: especifica la cadena dentro de la cual deseamos buscar y reemplazar.
  2. Patrón: esto especifica el patrón de expresión regular que queremos que coincida dentro de la cadena de entrada.
  3. Reemplazo: especifica la cadena que reemplaza las subcadenas coincidentes.
  4. Banderas: un conjunto de banderas opcionales que pueden ayudar a modificar la funcionalidad de la expresión regular. Por ejemplo, podemos habilitar la búsqueda global, la coincidencia entre mayúsculas y minúsculas, etc. Esta característica varía según el motor de base de datos.

Ejemplos:

Para comprender mejor cómo funciona esta función, veamos algunos ejemplos sobre cómo usarla.

Ejemplo 1: uso básico

Supongamos que tenemos una tabla que contiene información de un empleado como se muestra en el siguiente ejemplo:

Considere un caso en el que queremos reemplazar la aparición de la cadena 'Charlie' por 'Matthew'. Podemos utilizar la consulta de la siguiente manera:

SELECCIONAR

REGEXP_REPLACE(primer_nombre, 'Charlie', 'Matthew') AS nuevo_nombre

DE

empleados;

El ejemplo dado demuestra una búsqueda y reemplazo básicos para encontrar la cadena 'Charlie' de la columna 'first_name' y reemplazarla con 'Matthew'.

Producción:

Ejemplo 2: Reemplazo que no distingue entre mayúsculas y minúsculas

En algunos casos, es posible que desee realizar una búsqueda que no distinga entre mayúsculas y minúsculas. Esto significa que la función solo observará el contenido de la cadena y no las mayúsculas y minúsculas reales de las letras alfanuméricas.

En tal caso, utilizamos la 'i' como indicador de función de la siguiente manera:

SELECCIONE REGEXP_REPLACE(product_description, Samsung, Apple, 'i') COMO modificado

DE productos;

Al establecer la bandera en 'i', la función coincide con todas las palabras que coinciden con 'Samsung', independientemente de la mayúscula.

Conclusión

En este ejemplo, exploramos cómo usar y trabajar con la función REGEXP_REPLACE() para realizar una búsqueda y reemplazo basado en patrones de expresiones regulares.