En este articulo veremos las uniones de tablas en PostgreSQL. Las uniones las utilizamos frecuentemente para mostrar resultados de una combinación de tablas. En función de los resultados que esperamos deberemos utilizar un método de unión u otro.
Tipos de join
Existen 6 formas de unir tablas, 4 formas si utilizas columnas en común entre las tablas; inner join, left outer join, right outer join, full outer join y otras dos formas en la cual no se especifican los campos de cruce; natural join y cross join.
Inner join
Se utiliza este método de union para mostrar aquellos resultados que coinciden en ambas tablas por el campo de unión. Puedes leer más detalles y ejemplos de inner join en este otro articulo.

Left join
Se utiliza este método de union para mostrar aquellos resultados que coinciden en ambas tablas por el campo de unión y ademas, todos los valores de la tabla de la izquierda. Puedes leer más detalles y ejemplos de left join en este otro articulo.

Right join
Se utiliza este método de union para mostrar aquellos resultados que coinciden en ambas tablas por el campo de unión y ademas, todos los valores de la tabla de la derecha. Puedes leer más detalles y ejemplos de right join en este otro articulo.

Full join
Se utiliza este método de union para mostrar todos los resultados que coinciden o no entre las dos tablas. Podemos decir que es una combinación de los tres métodos anteriores. Puedes leer más detalles y ejemplos de full join en este otro articulo.

Cross join
Se utiliza este método de union para relacionar todo con todo, es decir, cada columna de la tabla 1 se relacionara con cada columna de la tabla 2 produciendo un producto cartesiano (nada recomendable). Puedes leer más detalles y ejemplos de full join en este otro articulo.

Otros tipos de join
Natural join
Se utiliza este método de union para unir las tablas por el nombre de los campos (necesario clave foránea). Junto a natural join se le puede especificar el tipo de join inner, left, right o full join.
Auto join
Decimos que un cruce de tablas es auto join cuando la tabla con la que se cruza es la misma, es decir se cruza consigo misma, pero por campos distintos. Junto a auto join se le puede especificar el tipo de join inner, left, right o full join. (auto join no existe como tal, es una forma de denominar a este tipo de cruces)