Contenido del curso
Primeros Pasos con Bases de Datos
Consultas y Manipulación de Datos
Relaciones y Modelado de Datos
Funciones, Operaciones y Vistas
- 18

Fechas y horas en SQL: current_timestamp y función extract
04:55 min - 19

Calcular días entre fechas con EPOCH en SQL
05:48 min - 20

Cómo unir columnas de texto con CONCAT en SQL
03:50 min - 21

Sentencias UPDATE y DELETE en PostgreSQL
05:54 min - 22

Operadores NULLIF y COALESCE para gestionar datos nulos en SQL
07:29 min - 23

Vistas y funciones reutilizables en pgAdmin
08:09 min
Integraciones
- 24

Importar CSV a PostgreSQL con COPY
07:56 min - 25

Configura Jupyter Notebooks con PostgreSQL
04:58 min - 26

Consultas SQL de PostgreSQL en Jupyter
04:56 min - 27

Diferencias entre Postgres y MySQL para elegir la base de datos correcta
03:07 min - 28

Tipos de datos únicos en PostgreSQL: JSON B, arrays y UUID
03:12 min - 29

Importancia de Postgres en el desarrollo profesional de software
01:54 min
Cómo funciona el JOIN en SQL con PG Admin
Resumen
Cuando trabajas con bases de datos relacionales, llega un momento en que necesitas cruzar información entre tablas distintas. Ahí entra el operador JOIN en SQL, la herramienta más usada para combinar tablas a partir de un campo en común. Si estás aprendiendo a manejar PG Admin y quieres entender cómo unir datos de clientes con sus rentas, este recorrido te va a servir.
¿Qué es el operador JOIN y para qué sirve?
El JOIN te permite fusionar dos o más tablas que comparten al menos un campo en común, normalmente un ID. Es la forma más limpia de relacionar información dispersa en distintas tablas sin duplicar datos.
¿Qué es un JOIN en SQL? Es un operador que combina filas de dos tablas usando una columna que ambas comparten, como un customer_id. Sin esa coincidencia, el JOIN no funciona.
En el ejemplo que se trabaja en PG Admin, hay dos tablas clave: customer y rental. Ambas comparten el campo customer_id, y ese es el puente que permite cruzarlas.
¿Qué campos conviene usar para hacer un JOIN?
La regla práctica es simple: usa siempre los campos ID. Intentar emparejar por email o por apellido es un dolor de cabeza porque hay variaciones, errores y duplicados. En cambio, los IDs son únicos y consistentes.
- customer_id para identificar clientes.
- store_id para identificar tiendas.
- address_id para vincular direcciones.
Estos campos son los candidatos ideales para que tu JOIN devuelva resultados confiables.
¿Cómo escribir tu primer JOIN entre customer y rental?
La sintaxis básica selecciona columnas específicas de cada tabla y las une mediante el operador ON, que indica qué columnas deben coincidir.
La estructura sería así: seleccionas customer.first_name, customer.last_name y rental.rental_date, y luego unes customer con rental usando ON customer.customer_id = rental.customer_id. Al ejecutar con F5, el resultado muestra 16,000 registros que indican qué usuario, con nombre y apellido, hizo cada renta y en qué fecha.
Fíjate en algo importante: estás especificando primero la tabla y luego la columna (tabla.columna). Esto evita ambigüedades cuando dos tablas tienen columnas con el mismo nombre.
¿Por qué importa el orden de las tablas en un JOIN?
El orden establece la prioridad de la consulta. Si pones customer primero y luego rental, la query toma como referencia inicial los datos del cliente. Si inviertes el orden, la prioridad cambia y puedes obtener errores o resultados distintos.
¿El orden de las tablas afecta un JOIN? Sí, el orden define qué tabla manda la prioridad de la consulta. Si lo cambias sin ajustar el resto, vas a tener errores en tu query.
No te preocupes si al inicio se te olvida la secuencia. Es de las cosas más comunes al aprender SQL. Solo reordena los campos y la consulta volverá a funcionar.
¿Cuándo usar FULL JOIN en lugar de un JOIN simple?
Mientras el JOIN tradicional te muestra solo las coincidencias entre tablas, el FULL JOIN trae todos los registros de ambas tablas, hayan coincidido o no. Esto es útil cuando quieres ver la imagen completa, incluyendo huérfanos.
En el ejemplo, al cambiar a un FULL JOIN seleccionando solo customer.first_name y rental.rental_date, la consulta deja de filtrar y empieza a mostrar la unión integral de ambos conjuntos de datos.
¿Cómo entender un JOIN complejo con el botón EXPLAIN?
Cuando ya tienes varios JOINs encadenados y te pierdes, PG Admin tiene un atajo que vale oro: el botón E de EXPLAIN. Seleccionas el statement, presionas E, y obtienes un diagrama que te muestra:
- Qué tablas estás seleccionando.
- Qué columnas funcionan como elemento común.
- Qué tipo de JOIN se está ejecutando.
Lo mejor es que esa explicación es exportable, así que puedes generar documentación visual de tus consultas. Es una herramienta brutal para depurar y para entender por qué una query se comporta de cierta forma.
La recomendación es práctica: crea muchas queries de este tipo y apóyate en EXPLAIN para descomponer cada diagrama. Con el tiempo vas a leer un JOIN sin necesidad de ayuda visual, pero mientras tanto, ese botón es tu mejor aliado.
¿Tú ya probaste hacer tu primer JOIN en PG Admin? Cuéntame en los comentarios qué tablas estás cruzando y si te ha funcionado el botón EXPLAIN para entender tus consultas.