Puedes ejecutar cualquier consulta SQL en nuestra consola interactiva: Abrir consola SQL →
Funciones avanzadas en SQL: transforma y analiza datos como un profesional
SQL incluye funciones avanzadas para manipular texto, fechas, números y realizar cálculos complejos. Estas funciones son esenciales para reportes, análisis y procesamiento de datos.
Tabla de contenidos
1. Funciones de texto
SELECT UPPER(nombre) FROM usuarios;
SELECT LOWER(nombre) FROM usuarios;
SELECT LENGTH(nombre) FROM usuarios;
SELECT SUBSTRING(nombre, 1, 3) FROM usuarios;
SELECT CONCAT(nombre, ' ', apellido) FROM usuarios;
2. Funciones numéricas
SELECT ABS(-10);
SELECT ROUND(3.14159, 2);
SELECT CEIL(4.2);
SELECT FLOOR(4.9);
SELECT POWER(2, 3);
3. Funciones de fecha
SELECT NOW();
SELECT CURRENT_DATE;
SELECT EXTRACT(YEAR FROM fecha);
SELECT DATE_PART('month', fecha);
SELECT fecha + INTERVAL '7 days';
4. Funciones de agregación
SELECT COUNT(*) FROM usuarios;
SELECT AVG(precio) FROM productos;
SELECT SUM(precio) FROM productos;
SELECT MIN(precio) FROM productos;
SELECT MAX(precio) FROM productos;
5. Funciones condicionales
SELECT COALESCE(email, 'Sin email') FROM usuarios;
SELECT NULLIF(edad, 0) FROM usuarios;
SELECT CASE
WHEN precio < 20 THEN 'Barato'
WHEN precio BETWEEN 20 AND 50 THEN 'Medio'
ELSE 'Caro'
END
FROM productos;
6. Ejemplos prácticos
SELECT nombre, UPPER(nombre) AS mayusculas
FROM usuarios;
SELECT producto, ROUND(precio, 2) AS precio_redondeado
FROM productos;
SELECT nombre, EXTRACT(YEAR FROM fecha_registro) AS año_registro
FROM usuarios;
SELECT producto, COALESCE(descripcion, 'Sin descripción')
FROM productos;
7. Ejercicios para practicar
- Convierte nombres a mayúsculas.
- Redondea precios a 2 decimales.
- Extrae el año de registro de usuarios.
- Usa COALESCE para reemplazar NULL.
- Explica para qué sirven las funciones avanzadas.
SELECT UPPER(nombre) FROM usuarios;
SELECT ROUND(precio, 2) FROM productos;
SELECT EXTRACT(YEAR FROM fecha_registro) FROM usuarios;
SELECT COALESCE(email, 'Sin email') FROM usuarios;
-- Sirven para transformar, limpiar y analizar datos.
8. Mini‑proyecto: Limpieza y transformación de datos
SELECT nombre,
UPPER(nombre) AS mayusculas,
COALESCE(email, 'Sin email') AS email_limpio,
ROUND(salario, 2) AS salario_redondeado,
EXTRACT(YEAR FROM fecha_registro) AS año_registro
FROM usuarios;
9. Errores comunes
- Usar funciones en columnas indexadas (puede ralentizar).
- Confundir COALESCE con NULLIF.
- Redondear valores sin especificar decimales.
- Olvidar alias en funciones complejas.
10. Preguntas frecuentes
¿Las funciones afectan el rendimiento?
Sí, especialmente si se aplican sobre columnas grandes.
¿Puedo combinar varias funciones?
Sí, SQL permite anidar funciones sin límite.