Angel García · Curso SQL
10 de 60 temas disponibles

SQL desde cero, sobre una base real

La ruta completa de SQL sobre PostgreSQL, usando Northwind como único dataset de principio a fin. Cada consulta del material está ejecutada contra la base antes de escribirse.

12Bloques
60Temas
12Tablas
northwind=>
SELECT c.company_name, count(*) AS pedidos
FROM customers c
JOIN orders o ON o.customer_id = c.customer_id
GROUP BY c.company_name
ORDER BY pedidos DESC
LIMIT 4;
    company_name    | pedidos
--------------------+---------
 Save-a-lot Markets |      31
 Ernst Handel       |      30
 QUICK-Stop         |      28
 Folk och fä HB     |      19

Empieza en 3 pasos

El acceso a la base de datos es gratis

  1. 1

    Pide tu acceso

    Pedir mi acceso → 30 segundos · necesitas iniciar sesión con tu cuenta de Google
    Más detalle

    Te creo un usuario y una contraseña propios para conectarte a una base PostgreSQL real, en la nube y ya cargada con datos. Te llegan por correo en menos de 24 horas.

  2. 2

    Instala DBeaver y conéctate

    Ir al tema 1 → Es el primer tema del curso · no necesitas instalar ningún servidor
    Más detalle

    DBeaver es el programa con el que vas a entrar a la base. Te digo cuál descargar, cómo crear la conexión con los cinco datos que te mandé y por qué hay que activar el SSL.

  3. 3

    Empieza el curso

    Seguir por el tema 2 → Se publica de a pocos · no hace falta esperar
    Más detalle

    Doce bloques, de la primera consulta hasta los casos reales. Puedes ir leyendo aunque todavía no tengas tu acceso.

La ruta completa

10 temas disponibles · el resto en camino

1

Antes de escribir SQL

3/3
2

La consulta

7/7
3

Transformar valores

0/3
  • 11Tipos de datos en PostgreSQL
  • 12Funciones dentro del SELECT
  • 13CASE: condicionales en SQL
4

Agregar

0/4
  • 14Funciones de agregación
  • 15GROUP BY
  • 16HAVING vs WHERE
  • 17Agregación avanzada
5

Combinar tablas

0/6
  • 18INNER JOIN
  • 19LEFT, RIGHT y FULL JOIN
  • 20CROSS JOIN y self-join
  • 21Anti-join y semi-join
  • 22UNION, INTERSECT y EXCEPT
  • 23Joins múltiples y granularidad
6

Consultas dentro de consultas

0/6
  • 24Subconsultas escalares y multivalor
  • 25Subconsultas correlacionadas
  • 26Tablas derivadas
  • 27CTE: la cláusula WITH
  • 28CTE recursivas
  • 29LATERAL
7

Funciones de ventana

0/6
  • 30Qué es una función de ventana
  • 31PARTITION BY y ORDER BY
  • 32El marco: ROWS contra RANGE
  • 33Ranking: ROW_NUMBER, RANK, DENSE_RANK y NTILE
  • 34LAG, LEAD, FIRST_VALUE y LAST_VALUE
  • 35Distribución y percentiles
8

Modificar datos (DML)

0/4
  • 36INSERT: añadir filas
  • 37UPDATE: modificar filas
  • 38DELETE y TRUNCATE: quitar filas
  • 39UPSERT y RETURNING
9

Definir estructuras (DDL)

0/6
  • 40CREATE TABLE: crear tablas
  • 41Restricciones
  • 42ALTER TABLE: cambiar lo que ya existe
  • 43Vistas
  • 44Crear tus propias funciones
  • 45Secuencias e IDENTITY
10

Transacciones (TCL)

0/3
  • 46BEGIN, COMMIT y ROLLBACK
  • 47SAVEPOINT: deshacer una parte
  • 48ACID y niveles de aislamiento
11

Rendimiento

0/3
  • 49Índices
  • 50EXPLAIN y EXPLAIN ANALYZE
  • 51Escribir consultas que no se arrastren
12

Casuísticas

0/9
  • 52Fechas sin actividad
  • 53Máximas sesiones activas
  • 54Agrupar intervalos coincidentes
  • 55Islas y brechas
  • 56Top N por grupo
  • 57Periodo contra periodo
  • 58Análisis ABC de clientes
  • 59Detectar duplicados
  • 60Pivotar datos