Todo lo referente a INNER JOIN

Unir datos en SQL

Maham Faisal Khan

Senior Content Developer, DataCamp

Todo lo referente a las INNER JOIN

Diagrama que muestra dos tablas: tabla izquierda y tabla derecha. Los valores de id coincidentes de las tablas izquierda y derecha se muestran con los mismos colores.

Unir datos en SQL

Todo lo referente a las INNER JOIN

  • INNER JOIN busca registros en ambas tablas que coincidan en un campo determinado.
Diagrama de INNER JOIN en el campo id

Diagrama que muestra dos tablas: tabla_izq y tabla_der. Los valores de id que coinciden en las tablas izquierda y derecha se muestran utilizando los mismos colores y están conectados con flechas.

Unir datos en SQL

Todo lo referente a las INNER JOIN

Diagrama de INNER JOIN en el campo id

Diagrama que muestra dos tablas: tabla_izq y tabla_der. Los valores de id que coinciden en las tablas izquierda y derecha se muestran con los mismos colores y se conectan con flechas. Los registros que no son de interés para INNER JOIN se han atenuado.

Unir datos en SQL

Todo lo referente a las INNER JOIN

Diagrama de INNER JOIN en el campo id

Diagrama que muestra dos tablas: tabla_izq y tabla_der. El resultado de unir las dos consultas se muestra a la derecha, y se devuelven solo los registros coincidentes en la columna id de ambas tablas.

Unir datos en SQL

Esquema de la base de datos de líderes

Líderes mundiales hasta 2024: Esquema que muestra tres tablas de la base de datos de líderes: presidentes, primeros_ministros y mandatos_primer_ministro. A presidentes y primer_ministro se les puede aplicar una unión en el campo país, y a primeros_ministros y mandatos_primer_ministro se les puede aplicar una unión en el campo primer_ministro.

Unir datos en SQL

En la tabla de los presidentes

SELECT * 
FROM presidents;
| country  | continent     | president               |
|----------|---------------|-------------------------|
| Egypt    | Africa        | Abdel Fattah el-Sisi    |
| Portugal | Europe        | Marcelo Rebelo de Sousa | 
| USA      | North America | Joe Biden               |
| Uruguay  | South America | Luis Lacalle Pou        |
| Pakistan | Asia          | Asif Ali Zardari        |
| Chile    | South America | Gabriel Boric           |
| India    | Asia          | Droupadi Murmu          |
Unir datos en SQL

Conoce a los primeros ministros

La tabla primeros_ministros

La tabla primeros_ministros de la base de datos de líderes, que contiene tres columnas: país, continente y primer_ministro.

Unir datos en SQL

Primeros ministros, les presento a los presidentes

La tabla primeros_ministros

Dos tablas una al lado de la otra: presidentes y primer_ministro. Las columnas coincidentes están coloreadas en las dos tablas.

La tabla primeros_ministros

Dos tablas una al lado de la otra: presidentes y primer_ministro. Las columnas coincidentes están coloreadas en las dos tablas.

Unir datos en SQL

Nuestra primera INNER JOIN

--Inner join of presidents and prime_ministers, joining on country

SELECT prime_ministers.country, prime_ministers.continent, prime_minister, president
FROM presidents
INNER JOIN prime_ministers
ON presidents.country = prime_ministers.country;

Nota: El formato `tabla.nombre_columna` debe utilizarse al seleccionar columnas que existan en ambas tablas para evitar un error de SQL.

| country        | continent | prime_minister   | president               |
|----------------|-----------|------------------|-------------------------|
| Egypt          | Africa    | Mostafa Madbouly | Abdel Fattah el-Sisi    |
| Portugal       | Europe    | Luís Montenegro  | Marcelo Rebelo de Sousa |
| Pakistan       | Asia      | Shehbaz Sharif   | Asif Ali Zardari        |
| India          | Asia      | Narendra Modi    | Ram Nath Kovind         |
Unir datos en SQL

Asignar alias a tablas

--Inner join of presidents and prime_ministers, joining on country

SELECT p2.country, p2.continent, prime_minister, president
FROM presidents AS p1 INNER JOIN prime_ministers AS p2
ON p1.country = p2.country;
| country        | continent | prime_minister   | president               |
|----------------|-----------|------------------|-------------------------|
| Egypt          | Africa    | Mostafa Madbouly | Abdel Fattah el-Sisi    |
| Portugal       | Europe    | Luís Montenegro  | Marcelo Rebelo de Sousa |
| Pakistan       | Asia      | Shehbaz Sharif   | Asif Ali Zardari        |
| India          | Asia      | Narendra Modi    | Ram Nath Kovind         |

Los alias pueden utilizarse en la sintaxis `tabla.nombre_columna` en las cláusulas SELECT y ON.

Unir datos en SQL

Usar USING

--Inner join of presidents and prime_ministers, joining on country
SELECT p2.country, p2.continent, prime_minister, president
FROM presidents AS p1
INNER JOIN prime_ministers AS p2
USING(country);
| country        | continent | prime_minister   | president               |
|----------------|-----------|------------------|-------------------------|
| Egypt          | Africa    | Mostafa Madbouly | Abdel Fattah el-Sisi    |
| Portugal       | Europe    | Luís Montenegro  | Marcelo Rebelo de Sousa |
| Pakistan       | Asia      | Shehbaz Sharif   | Asif Ali Zardari        |
| India          | Asia      | Narendra Modi    | Ram Nath Kovind         |
Unir datos en SQL

¡Vamos a practicar!

Unir datos en SQL

Preparing Video For Download...