PostgreSQL – ÚNETE A LA IZQUIERDA

LEFT JOIN de PostgreSQL devuelve todas las filas de la tabla en el lado izquierdo de la combinación y las filas coincidentes para la tabla en el lado derecho de la combinación. Las filas para las que no hay una fila coincidente en el lado derecho, el conjunto de resultados contendrá nulo. LEFT JOIN también se conoce como LEFT OUTER JOIN.

Syntax:
SELECT table1.column1, table1.column2, table2.column1, ....
FROM table1 
LEFT JOIN table2
ON table1.matching_column = table2.matching_column;


table1: First table.
table2: Second table
matching_column: Column common to both the tables.

Analicemos la sintaxis anterior:

  • En primer lugar, mediante la sentencia SELECT especificamos las tablas de donde queremos que se seleccionen los datos.
  • En segundo lugar, especificamos la tabla principal.
  • En tercer lugar, especificamos la tabla a la que se une la tabla principal.

El siguiente diagrama de Venn ilustra el funcionamiento de la cláusula LEFT JOIN de PostgreSQL:

Por el bien de este artículo, utilizaremos la base de datos de alquiler de DVD de muestra , que se explica aquí y se puede descargar haciendo clic en este enlace en nuestros ejemplos.

Ahora, veamos algunos ejemplos.

Ejemplo 1:
aquí usaremos la cláusula LEFT JOIN para unir la tabla «película» a la tabla «inventario».

SELECT
    film.film_id,
    film.title,
    inventory_id
FROM
    film
LEFT JOIN inventory ON inventory.film_id = film.film_id;

Producción:

Ejemplo 2:
aquí usaremos la cláusula LEFT JOIN para unir la tabla de «películas» a la tabla de «inventario» y usaremos la cláusula WHERE para filtrar las películas que no están en el inventario.

SELECT
    film.film_id,
    film.title,
    inventory_id
FROM
    film
LEFT JOIN inventory ON inventory.film_id = film.film_id
WHERE
    inventory.film_id IS NULL;

Producción:

Publicación traducida automáticamente

Artículo escrito por RajuKumar19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *