Esta carpeta contiene todo lo que necesitas saber sobre SQL aplicado a la Ingeniería de Datos.
💡 Nota importante: Este módulo usa PostgreSQL como sistema de base de datos, pero enseña SQL estándar que funciona en otros sistemas. Lee SQL vs PostgreSQL para entender las diferencias y por qué elegimos PostgreSQL.
Antes de empezar, necesitas una herramienta para ejecutar SQL. Te recomendamos:
- DBeaver - Cliente SQL universal, gratuito y potente (recomendado)
- Otras opciones - pgAdmin, TablePlus, DataGrip, VS Code extensions
💡 ¿No sabes cuál elegir? Lee la comparación de herramientas o ve directo con DBeaver, es la opción más completa y gratuita.
-
- ¿Cuál es la diferencia?
- ¿Por qué usamos PostgreSQL?
- SQL estándar vs extensiones PostgreSQL
-
- DBeaver: Cliente Universal - Recomendado para empezar
- Instalación y configuración paso a paso
- Conectar a PostgreSQL
- Editor SQL con autocompletado
- Query Builder visual
- Exportar datos
- Otras Herramientas
- pgAdmin (incluido en Docker)
- TablePlus, DataGrip, VS Code extensions
- Comparación y cuándo usar cada una
- DBeaver: Cliente Universal - Recomendado para empezar
-
- SELECT, FROM, WHERE
- JOINs básicos
- Agregaciones (GROUP BY, HAVING)
- Ordenamiento y límites
- Funciones comunes
-
- Subconsultas y CTEs
- Window functions
- Manejo avanzado de fechas
- Optimización básica
-
- Particionamiento
- Índices avanzados
- Funciones analíticas avanzadas
- Patrones complejos
-
- Normalización
- Diseño de esquemas
- Relaciones y claves
- Data Warehouses
-
- Ejercicios prácticos por nivel
- Casos de uso reales
- Soluciones comentadas
Al finalizar esta sección, deberías poder:
- Usar herramientas SQL (DBeaver, pgAdmin, etc.) para visualizar datos
- Escribir consultas SQL eficientes y mantenibles
- Generar queries con ayuda visual (Query Builder)
- Diseñar esquemas de bases de datos apropiados
- Optimizar queries para grandes volúmenes de datos
- Aplicar SQL en pipelines de datos
-
Configura tu entorno
- Base de datos local: Sigue README-DOCKER.md para levantar PostgreSQL con Docker
- Herramienta SQL: Instala y configura DBeaver (recomendado) o elige otra de Otras Herramientas
- Conecta DBeaver a tu base de datos local siguiendo las instrucciones en README-DOCKER.md
-
Aprende SQL básico - Fundamentos con ayuda visual
- Usa el editor SQL de DBeaver para practicar
- Visualiza resultados directamente en DBeaver
-
Profundiza en SQL intermedio - Conceptos avanzados
- Aprovecha el autocompletado y formateo de DBeaver
-
Explora SQL avanzado - Optimización y patrones complejos
- Usa EXPLAIN en DBeaver para analizar rendimiento
-
Practica con Ejercicios - Usa DBeaver para visualizar resultados
Según el roadmap, después de dominar SQL:
👉 Siguiente etapa: 03_python (Etapa 2 del roadmap)
- Automatización y estructurar procesos
- Python para Data Engineering
- Manejo de archivos y Pandas
Después: 04_modelado_y_calidad (Etapa 3) para diseño de modelos analíticos y calidad de datos.
💡 Tip: Revisa el Roadmap completo para ver la ruta completa.
Para practicar SQL, puedes usar una base de datos PostgreSQL 15 local con Docker:
-
Asegúrate de tener el archivo
.enven la raíz del proyecto:# Desde la raíz del proyecto (no desde 02_sql/) cp .env.example .env💡 Nota: El
docker-compose.ymlusa automáticamente el.envde la raíz del proyecto, no necesitas crear uno en02_sql/. -
Inicia la base de datos:
cd 02_sql docker-compose up -d -
Conecta tu herramienta SQL:
- DBeaver (recomendado): Sigue las instrucciones en README-DOCKER.md - Opción 2: DBeaver
- pgAdmin (web): Accede a http://localhost:5050 (ver README-DOCKER.md)
- Otras herramientas: Consulta Otras Herramientas SQL para más opciones
Esto te dará:
- PostgreSQL 15 listo para usar
- Datos de ejemplo (usuarios, productos, ventas)
- Herramientas para trabajar: DBeaver, pgAdmin, o la que prefieras
💡 ¿Por qué PostgreSQL? Lee SQL vs PostgreSQL para entender por qué usamos PostgreSQL en este repositorio y cómo se relaciona con SQL estándar.
SQL es fundamental para Data Engineering. Dedica tiempo a practicar y entender los conceptos, no solo memorizar sintaxis.