Explore cómo funcionan los JOIN (modulo 5) - guillermopetcho/Coursera-Certificate----Data-Analytics-Google GitHub Wiki
Esta lectura le proporciona los pasos que el instructor realiza en el siguiente video, Explore cómo funcionan los JOINs
. El vídeo le enseña a utilizar JOIN en SQL para agregar datos en bases de datos.
Mantenga esta guía paso a paso abierta mientras ve el video. Puede servir como una herramienta de referencia útil si necesita contexto adicional o clarificación mientras sigue los pasos del video. Esta no es una actividad calificada, pero puedes completar estos pasos para practicar las habilidades demostradas en el video.
Lo que necesitas
Para seguir al instructor, necesitará cargar el conjunto de datos de los empleados en su espacio de proyecto. Si aún no ha cargado estos datos, siga las instrucciones de la lectura Cargar el conjunto de datos de empleados en BigQuery
. JOINs más comunes
Este vídeo explica exactamente cómo funcionan los JOINs. JOIN es una cláusula SQL que se utiliza para combinar filas de dos o más tablas basándose en una columna relacionada. El instructor analiza los diferentes tipos de JOINs con más detalle en el vídeo; a continuación se ofrece una referencia rápida que puede revisar a medida que avanza:
INNER JOIN: una función que devuelve registros con valores coincidentes en ambas tablas
LEFT JOIN: una función que devuelve todos los registros de la tabla izquierda (primera mencionada) y sólo los registros coincidentes de la tabla derecha (segunda mencionada)
RIGHT JOIN: una función que devuelve todos los registros de la tabla derecha (segunda mencionada) y sólo los registros coincidentes de la tabla izquierda (primera mencionada).
OUTER JOIN: una función que combina RIGHT JOIN y LEFT JOIN para devolver todos los registros coincidentes de ambas tablas.
Ejemplo 1: INNER JOIN
En el video, el instructor utiliza BigQuery para unir las tablas de empleados y departamentos. Los siguientes pasos le llevarán a escribir la consulta en la ventana de consulta. Si lo prefiere, puede copiar y pegar la siguiente consulta en la ventana de consulta.
En BigQuery, seleccione el botón COMPONER UNA NUEVA CONSULTA . BigQuery abre una ventana de consulta donde puede introducir su consulta. El instructor ya ha ejecutado algunas consultas por lo que su número de línea de inicio puede ser diferente al suyo. Si usted acaba de abrir BigQuery, su número de línea será 1. No pasa nada si tus números de línea no son los mismos que aparecen en el vídeo.
En la línea 1 de la ventana de consulta, introduce SELECT y pulsa Intro.
Pulsa Tabulador y en la línea 2 introduce empleados.nombre COMO nombre_empleado y pulsa Intro.
En la línea 3, introduce employees.role AS employee_role y pulsa Intro.
En la línea 4, introduzca departments.name COMO department_name y pulse Entrar.
En la línea 5, pulsa Retroceso para detener la sangría, introduce FROM y pulsa Intro.
En la línea 6, pulse Tabulador y, a continuación, introduzca [ nombre-de-su-proyecto ].datos_empleados.empleados, sustituyendo [nombre-de-su-proyecto] por el nombre del proyecto BigQuery al que ha añadido el conjunto de datos datos de datos_empleados.
Continuando en la línea 6, introduzca AS empleados. Pulse Intro.
En la línea 7, pulse Retroceso para detener la sangría, introduzca INNER JOIN y, a continuación, pulse Intro.
En la línea 8, pulse Tabulador e introduzca [ nombre-de-su-proyecto ].datos_empleados.departamentos, sustituyendo [nombre-de-su-proyecto] por el nombre del proyecto BigQuery al que ha añadido el conjunto de datos datos datos_empleados.
Continuando en la línea 8, añada AS departments. Pulse Intro.
En la línea 9, introduzca ON empleados.department_id = departamentos.department_id.
Ejecute la Consulta seleccionando el botón Ejecutar .
SELECT
employees.name AS employee_name,
employees.role AS employee_role,
departments.name AS department_name
FROM
[your-project-id].employee_data.employees AS employees
INNER JOIN
[your-project-id].employee_data.departments AS departments
ON employees.department_id = departments.department_id
Ahora, creará una nueva consulta que utiliza LEFT JOIN.
Utilizando las pestañas de la ventana de consulta para navegar entre las consultas, copie y pegue la consulta del Ejemplo 1 en la nueva ventana de consulta.
En la línea 7, sustituya INNER JOIN por LEFT JOIN.
Ejecute la consulta seleccionando el botón Ejecutar.
SELECT
employees.name AS employee_name,
employees.role AS employee_role,
departments.name AS department_name
FROM
[your-project-id].employee_data.employees AS employees
LEFT JOIN
[your-project-id].employee_data.departments AS departments
ON employees.department_id = departments.department_id
Ejemplo 3: RIGHT JOIN
Ahora, creará una nueva consulta que utiliza RIGHT JOIN. Abra una nueva ventana de consulta.
Utilizando las pestañas de la ventana de consulta para navegar entre las consultas, copie y pegue la consulta del Ejemplo 2 en la nueva ventana de consulta.
En la línea 7, sustituya LEFT JOIN por RIGHT JOIN.
Ejecute la consulta seleccionando el botón Ejecutar.
Si lo prefiere, puede copiar y pegar la siguiente consulta en la ventana de consulta de BigQuery.
SELECT
employees.name AS employee_name,
employees.role AS employee_role,
departments.name AS department_name
FROM
[your-project-id].employee_data.employees AS employees
RIGHT JOIN
[your-project-id].employee_data.departments AS departments
ON employees.department_id = departments.department_id
Ejemplo 4: FULL OUTER JOIN
Ahora, creará una nueva consulta que utiliza FULL OUTER JOIN.
Utilizando las pestañas de la ventana de consulta para navegar entre las consultas, copie y pegue la consulta del Ejemplo 3 en la nueva ventana de consulta.
En la línea 7, sustituya RIGHT JOIN por FULL OUTER JOIN.
Ejecute la consulta seleccionando el botón Ejecutar.
Si lo prefiere, puede copiar y pegar la siguiente consulta en la ventana de consulta de BigQuery.
SELECT
employees.name AS employee_name,
employees.role AS employee_role,
departments.name AS department_name
FROM
[your-project-id].employee_data.employees AS employees
OUTER JOIN
[your-project-id].employee_data.departments AS departments
ON employees.department_id = departments.department_id