Curso de SQL Avanzado. Imagen tecnológica para curso de SQL avanzado, consultas complejas, joins, subconsultas, CTE, window functions, optimización, índices y rendimiento

Curso de SQL Avanzado

Introducción

El curso de SQL Avanzado está diseñado para profesionales que ya tienen un dominio intermedio de SQL y desean profundizar en el uso de bases de datos relacionales, optimización de consultas, estructuras complejas y automatización avanzada. En 20 horas, en formato online y en directo, se abordarán temas esenciales para trabajar con bases de datos de alto rendimiento, arquitecturas de datos empresariales y análisis de consultas complejas, con un enfoque técnico, práctico y orientado a entornos reales de empresa.

Objetivos

Al finalizar el curso, los participantes podrán:

  • Escribir consultas complejas con subconsultas, expresiones de tabla comunes (CTE), consultas recursivas y funciones de ventana.
  • Diseñar y optimizar esquemas de base de datos (normalización, relaciones, índices, constraints) según necesidad.
  • Crear y gestionar objetos de base de datos como vistas, procedimientos almacenados (stored procedures), funciones definidas por el usuario y triggers.
  • Analizar planes de ejecución y aplicar técnicas de optimización de consultas para mejorar rendimiento y eficiencia.
  • Gestionar transacciones, concurrencia y aislamiento cuando trabaje en entornos multiusuario.
  • Manipular datos avanzados: agregaciones complejas, pivot/unpivot, ranking, totales acumulados, análisis de series temporales.
  • Combinar capacidades estándar de SQL con extensiones/funcionalidades avanzadas (según gestor) para tareas corporativas exigentes.

 

Índice de Contenidos

Módulo 1. Repaso sólido y fundamentos avanzados

  • Repaso de SELECT, JOINs, subconsultas básicas, GROUP BY, agregaciones.
  • Revisión de estructuras: tablas, claves primarias/foráneas, normalización, constraints.
  • Revisión de tipos de datos y consideraciones comunes al modelar datos a escala.

Módulo 2. Consultas complejas con subconsultas, CTE y recursividad

  • Subconsultas anidadas (in SELECT, WHERE, FROM).
  • Expresiones de tabla comunes (CTE — Common Table Expressions).
  • Consultas recursivas: manejo de jerarquías, árboles y relaciones padre-hijo.
  • Uso de CTE vs subconsultas: ventajas, legibilidad, mantenimiento.

Módulo 3. Funciones de ventana, ranking y agregaciones avanzadas

  • Introducción a funciones de ventana (OVER, PARTITION BY, ORDER BY).
  • Aplicaciones: totales acumulados, medias móviles, análisis por ventanas, ranking, diferencia entre filas (LAG, LEAD), primeros/últimos valores, percentiles, agrupaciones avanzadas.
  • Uso de GROUPING SETS, ROLLUP, CUBE (si el SGBD lo admite) para agregaciones multidimensionales.

Módulo 4. Diseño avanzado de esquemas, normalización y optimización estructural

  • Repaso de normalización y buenas prácticas de modelado.
  • Indices: naturales, compuestos, cuándo y cómo usarlos.
  • Vistas (views): creación y utilidad para simplificación, seguridad y mantenibilidad.
  • Consideraciones de integridad, constraints y buenas prácticas estructurales.

Módulo 5. Programación en base de datos: stored procedures, funciones y triggers

  • Qué son los procedimientos almacenados y sus ventajas.
  • Creación de funciones definidas por el usuario, parametrización, modularidad.
  • Triggers (disparadores): uso automático ante inserción, actualización o borrado — cuándo y cómo implementarlos.
  • Uso de lógica procedural en SQL (si el SGBD lo permite, como en T-SQL, PL/pgSQL u otros).

Módulo 6. Optimización de consultas y rendimiento

  • Análisis de planes de ejecución: cómo interpretarlos, identificar cuellos de botella.
  • Estrategias de indexación, estadísticas, uso eficiente de JOINs y subconsultas.
  • Diseño de consultas basadas en conjuntos (set-based) vs soluciones iterativas.
  • Buenas prácticas: legibilidad, modularidad, documentación, mantenimiento en entornos de datos reales.

Módulo 7. Gestión de datos complejos y tareas avanzadas

  • Operaciones avanzadas de manipulación: merge, upsert, manejo de datos temporales/fechas, series temporales.
  • Pivot / Unpivot, agregaciones sobre strings, funciones analíticas.
  • Transacciones, control de concurrencia, aislamiento, integridad de datos en entornos multiusuario (si el SGBD lo soporta).

Detalles del Curso

  • Curso de 20 horas de duración
  • Modalidad presencial o directo/online
  • Totalmente práctico
  • Contacta con nosotros para conocer tus necesidades formativas

Requisitos

  • Experiencia previa práctica en SQL: consultas SELECT, JOINs básicos, agregaciones, subconsultas simples.
  • Conocimiento de bases de datos relacionales, diseño básico de tablas y relaciones.
  • Acceso a un sistema gestor relacional que permita trabajar con funciones avanzadas (por ejemplo PostgreSQL, MySQL, SQL Server, etc.).
  • Entorno de trabajo preparado para practicar: consola o cliente SQL, privilegios necesarios para crear/alterar objetos.

Alumnado

  • Analistas de datos, BI, reporting o business intelligence que necesitan consultas complejas y optimización.
  • Administradores de bases de datos (DBA), ingenieros de datos o desarrolladores backend que gestionan o diseñan bases de datos.
  • Perfiles técnicos en empresas que manejan grandes volúmenes de datos o requieren eficiencia en consulta.
  • Desarrolladores intermedios que quieren ampliar su dominio más allá de consultas básicas y trabajar con lógica compleja en BD.