Las funciones de cadena en SQL son herramientas poderosas que permiten manipular y transformar datos de texto. Estas funciones son esenciales para tareas como la limpieza de datos, la extracción de información específica y la modificación de cadenas de texto. En este módulo, exploraremos las funciones de cadena más comunes y cómo utilizarlas.

Contenido

Introducción a las funciones de cadena

Las funciones de cadena permiten realizar operaciones sobre datos de tipo texto (VARCHAR, CHAR, TEXT, etc.). Estas operaciones incluyen la obtención de la longitud de una cadena, la conversión de mayúsculas a minúsculas y viceversa, la extracción de subcadenas, la eliminación de espacios en blanco y la sustitución de partes de una cadena, entre otras.

Funciones de cadena comunes

LENGTH

La función LENGTH devuelve la longitud de una cadena de texto.

SELECT LENGTH('Hola Mundo') AS longitud;

Resultado:

longitud
10

UPPER y LOWER

Las funciones UPPER y LOWER convierten una cadena de texto a mayúsculas y minúsculas, respectivamente.

SELECT UPPER('Hola Mundo') AS mayusculas, LOWER('Hola Mundo') AS minusculas;

Resultado:

mayusculas minusculas
HOLA MUNDO hola mundo

SUBSTRING

La función SUBSTRING extrae una subcadena de una cadena de texto.

SELECT SUBSTRING('Hola Mundo', 1, 4) AS subcadena;

Resultado:

subcadena
Hola

TRIM

La función TRIM elimina los espacios en blanco al inicio y al final de una cadena de texto.

SELECT TRIM('   Hola Mundo   ') AS cadena_sin_espacios;

Resultado:

cadena_sin_espacios
Hola Mundo

REPLACE

La función REPLACE sustituye todas las apariciones de una subcadena dentro de una cadena de texto por otra subcadena.

SELECT REPLACE('Hola Mundo', 'Mundo', 'SQL') AS cadena_reemplazada;

Resultado:

cadena_reemplazada
Hola SQL

CONCAT

La función CONCAT concatena dos o más cadenas de texto.

SELECT CONCAT('Hola', ' ', 'Mundo') AS cadena_concatenada;

Resultado:

cadena_concatenada
Hola Mundo

Ejemplos prácticos

Ejemplo 1: Normalización de nombres

Supongamos que tenemos una tabla usuarios con una columna nombre que contiene nombres en diferentes formatos. Queremos normalizar estos nombres a mayúsculas.

SELECT UPPER(nombre) AS nombre_normalizado
FROM usuarios;

Ejemplo 2: Extracción de dominio de correo electrónico

Dada una tabla correos con una columna email, queremos extraer el dominio de cada correo electrónico.

SELECT SUBSTRING(email, POSITION('@' IN email) + 1) AS dominio
FROM correos;

Ejemplo 3: Eliminación de espacios en blanco

Queremos eliminar los espacios en blanco al inicio y al final de los nombres en la tabla clientes.

SELECT TRIM(nombre) AS nombre_sin_espacios
FROM clientes;

Ejercicios

Ejercicio 1: Longitud de cadenas

Dada una tabla productos con una columna descripcion, escribe una consulta que devuelva la longitud de cada descripción.

SELECT LENGTH(descripcion) AS longitud_descripcion
FROM productos;

Ejercicio 2: Conversión a minúsculas

Dada una tabla empleados con una columna apellido, escribe una consulta que devuelva los apellidos en minúsculas.

SELECT LOWER(apellido) AS apellido_minusculas
FROM empleados;

Ejercicio 3: Reemplazo de subcadenas

Dada una tabla articulos con una columna titulo, escribe una consulta que reemplace la palabra "viejo" por "nuevo" en cada título.

SELECT REPLACE(titulo, 'viejo', 'nuevo') AS titulo_actualizado
FROM articulos;

Conclusión

En este módulo, hemos explorado varias funciones de cadena en SQL que son esenciales para manipular y transformar datos de texto. Desde obtener la longitud de una cadena hasta reemplazar subcadenas, estas funciones son herramientas poderosas para cualquier programador que trabaje con bases de datos. Asegúrate de practicar con los ejercicios proporcionados para reforzar tu comprensión y habilidad en el uso de estas funciones. En el próximo módulo, profundizaremos en las funciones numéricas de SQL.

Curso de SQL

Módulo 1: Introducción a SQL

Módulo 2: Consultas básicas de SQL

Módulo 3: Trabajando con múltiples tablas

Módulo 4: Filtrado avanzado de datos

Módulo 5: Manipulación de datos

Módulo 6: Funciones avanzadas de SQL

Módulo 7: Subconsultas y consultas anidadas

Módulo 8: Índices y optimización de rendimiento

Módulo 9: Transacciones y concurrencia

Módulo 10: Temas avanzados

Módulo 11: SQL en la práctica

Módulo 12: Proyecto final

© Copyright 2024. Todos los derechos reservados