7️ JOIN — combinar datos de varias tablas

Qué hace: une tablas relacionadas según una o más columnas clave.
Veamos un ejemplo práctico con una tabla adicional llamada clientes:

cliente_id

nombre_cliente

ciudad

101

Laura Pérez

Monterrey

102

Juan Gómez

Mérida

103

Ana Ruiz

Puebla

104

Carlos Díaz

Tijuana

105

Sofía López

Guadalajara

🧩 Tipos principales de JOIN

  1. a) INNER JOIN — solo coincidencias entre ambas tablas

Qué hace:

  • Une ventas y clientes donde los cliente_id coinciden.
  • Excluye las filas donde cliente_id es NULL o no tiene coincidencia.

Resultado: 7 filas (una se excluye por NULL en cliente_id).

 

b) LEFT JOIN — todas las filas de la izquierda, aunque no haya coincidencia

Qué hace:

  • Muestra todas las filas de ventas.
  • Si no hay cliente, nombre_cliente será NULL.

Resultado: 8 filas (incluye la venta sin cliente asignado).

 

c) RIGHT JOIN — todas las filas de la derecha

(Lo opuesto al LEFT; menos común en análisis, pero útil cuando quieres todos los clientes aunque no tengan ventas.)

 

d) FULL OUTER JOIN — todas las filas de ambas tablas

Resultado: muestra todas las ventas y todos los clientes, incluso si alguno no coincide.

 

8️ DISTINCT — eliminar duplicados

Qué hace: devuelve solo valores únicos.

Ejemplo simple

Resultado: A, B, C (solo una vez cada uno).

Ejemplo intermedio — combinando varias columnas

SELECT DISTINCT producto, región

FROM ventas;

Explicación: devuelve pares únicos de producto y región.

 

9️ LIMIT / TOP / FETCH — limitar número de filas

Qué hace: devuelve solo las primeras N filas (muy usado para explorar datos).

Ejemplo

Explicación:

  • Ordena las ventas de más recientes a más antiguas.
  • LIMIT 3 devuelve solo las tres últimas.

(En SQL Server se usa TOP 3 en lugar de LIMIT 3.)

 

🔟 AS — alias de columnas o tablas

Qué hace: renombra temporalmente columnas o tablas, útil para legibilidad.

Ejemplo

Ventaja: los alias cortos (v, c) hacen la consulta más clara, y los alias descriptivos (producto_vendido, monto_total) mejoran la presentación de resultados.

 

🧠 Orden lógico de ejecución (muy importante)

Aunque escribes la consulta así:

SQL no se ejecuta en ese orden.
El orden lógico real es:

  1. FROM (obtiene los datos)
  2. JOIN (combina tablas)
  3. WHERE (filtra filas)
  4. GROUP BY (agrupa)
  5. HAVING (filtra grupos)
  6. SELECT (selecciona columnas)
  7. ORDER BY (ordena)
  8. LIMIT (limita el resultado final)

Entender este flujo mental ayuda muchísimo a depurar consultas y evitar errores.

 

Dominar SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY y JOIN es más importante que memorizar funciones.
Estas sentencias son las que te permiten estructurar cualquier análisis en SQL:

  • Filtrar información relevante
  • Combinar fuentes
  • Crear resúmenes
  • Ordenar y presentar resultados

Una vez las domines, las funciones como SUM(), AVG(), COUNT() o CASE se vuelven simples complementos.

¿Quieres aprender más de SQL?

Inscríbete a nuestro curso práctico en www.datdata.com/sql