Tema
SQL desde cero
Casi todas las aplicaciones que usas a diario guardan información en una base de datos: la tienda en línea donde compras, la app del banco, el sistema escolar donde ves tus calificaciones o el panel de WordPress de un cliente. SQL (Structured Query Language) es el lenguaje con el que se crean, consultan y modifican esas bases de datos relacionales, y lleva más de 40 años siendo el estándar de la industria.
Aprender SQL es una de las mejores inversiones que puedes hacer como desarrollador: lo usarás con PHP, Laravel, Node.js, Python o cualquier otro lenguaje. Y lo mejor es que lo que aprendas aquí funciona casi igual en MySQL, MariaDB, PostgreSQL, SQLite y SQL Server.
En este curso trabajarás con un mismo esquema de ejemplo de principio a fin: la base de datos de una pequeña tienda en línea (clientes, categorias, productos, pedidos y detalle_pedido). Así cada lección se apoya en la anterior y verás cómo un proyecto real crece.
Qué vas a poder hacer al terminar
- Entender qué es una base de datos, un SGBD y cuándo conviene SQL o NoSQL.
- Crear tablas con los tipos de datos y restricciones correctos.
- Insertar, modificar y borrar datos de forma segura.
- Escribir consultas de cualquier complejidad: filtros, agregaciones, JOINs, subconsultas, CTEs y funciones de ventana.
- Medir y mejorar el rendimiento con índices y
EXPLAIN. - Proteger tus datos con transacciones y restricciones de integridad.
- Diseñar una base de datos desde cero con el modelo entidad-relación y normalización.
- Construir la base de datos completa de una tienda en línea y de un sistema escolar.
Requisitos previos
- Saber usar la computadora, crear carpetas y abrir una terminal. Si no, empieza por Fundamentos.
- No necesitas saber programar. Después de este curso podrás conectar tus bases de datos desde PHP o Node.js.
- Para practicar puedes usar un sitio en línea (sin instalar nada) o instalar MySQL o PostgreSQL.
Temario
Nivel básico
- ¿Qué es una base de datos? — BD, SGBD, relacional vs NoSQL y cómo practicar.
- Tablas, filas y claves — La estructura de una BD relacional y el esquema de la tienda.
- Tipos de datos — Números, texto, fechas, booleanos y el famoso
NULL. - CREATE, ALTER y DROP — Crear, modificar y eliminar tablas.
- INSERT, UPDATE y DELETE — Agregar, cambiar y borrar datos.
- SELECT básico — Consultar columnas, filtrar con WHERE, ordenar y paginar.
- Filtros: LIKE, IN, BETWEEN — Búsquedas por patrón, listas, rangos, NULL y CASE.
Nivel intermedio
- Agregación y GROUP BY — Contar, sumar, promediar y agrupar con HAVING.
- JOINs — Combinar tablas: INNER, LEFT, RIGHT, FULL, CROSS y SELF JOIN.
- Subconsultas y CTEs — Consultas dentro de consultas y la cláusula WITH.
- Funciones de ventana — Rankings, acumulados, LAG y LEAD.
- Vistas — Guardar consultas como tablas virtuales.
Nivel avanzado / profesional
- Índices y rendimiento — Cómo funcionan los índices y cómo leer EXPLAIN.
- Transacciones y ACID — Operaciones todo-o-nada y niveles de aislamiento.
- Restricciones e integridad — FK, UNIQUE, CHECK y ON DELETE.
- Diseño: E-R y normalización — Modelar entidades y aplicar 1FN, 2FN y 3FN.
- Procedimientos y triggers — Lógica dentro de la base de datos.
- Proyecto: tienda y escuela — Diseña dos bases de datos reales con consultas de negocio.
¿Y después?
Cuando termines, especialízate en el motor que vayas a usar: MySQL (hosting, WordPress, Laravel), PostgreSQL (apps modernas, Supabase) o explora el mundo NoSQL con MongoDB.