PostgreSQL – UNIÓN INTERNA

En PostgreSQL, la palabra clave INNER JOIN selecciona todas las filas de ambas tablas siempre que se cumpla la condición. Esta palabra clave creará el conjunto de resultados combinando todas las filas de ambas tablas donde se cumple la condición, es decir, el valor del campo común será el mismo.

Syntax:
SELECT table1.column1, table1.column2, table2.column1, ....
FROM table1 
INNER 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 INNER 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í uniremos la tabla «cliente» a la tabla «pago» usando la cláusula INNER JOIN.

SELECT
    customer.customer_id,
    first_name,
    last_name,
    email,
    amount,
    payment_date
FROM
    customer
INNER JOIN payment ON payment.customer_id = customer.customer_id;

Producción:

Ejemplo 2:

Aquí uniremos la tabla de «clientes» a la tabla de «pagos» usando la cláusula INNER JOIN y los ordenaremos con la cláusula ORDER BY:

SELECT
    customer.customer_id,
    first_name,
    last_name,
    email,
    amount,
    payment_date
FROM
    customer
INNER JOIN payment ON payment.customer_id = customer.customer_id
ORDER BY
    customer.customer_id;

Producción:

Ejemplo 3:
Aquí uniremos la tabla «cliente» a la tabla «pago» usando la cláusula INNER JOIN y los filtraremos con la cláusula WHERE:

SELECT
    customer.customer_id,
    first_name,
    last_name,
    email,
    amount,
    payment_date
FROM
    customer
INNER JOIN payment ON payment.customer_id = customer.customer_id
WHERE
    customer.customer_id = 15;


Producción:

Ejemplo 4:
Aquí estableceremos la relación entre tres tablas: personal, pago y cliente usando la cláusula INNER JOIN.

SELECT
    customer.customer_id,
    customer.first_name customer_first_name,
    customer.last_name customer_last_name,
    customer.email,
    staff.first_name staff_first_name,
    staff.last_name staff_last_name,
    amount,
    payment_date
FROM
    customer
INNER JOIN payment ON payment.customer_id = customer.customer_id
INNER JOIN staff ON payment.staff_id = staff.staff_id;

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 *