BigQuery es la base de datos analítica de bajo costo, no-ops y completamente administrada de Google. Con BigQuery, puedes consultar muchos terabytes de datos sin tener que administrar infraestructuras y sin necesitar un administrador de base de datos. BigQuery usa SQL y puede aprovechar el modelo de pago por uso. BigQuery te permite enfocarte en el análisis de datos para buscar estadísticas valiosas.
Unir tablas de datos puede proporcionar estadísticas valiosas sobre tu conjunto de datos. Sin embargo, cuando unes los datos, existen errores comunes que podrían corromper los resultados. Este lab se enfoca en cómo evitar estos errores.
Tipos de uniones:
Unión cruzada: Combina cada fila del primer conjunto de datos con cada fila del segundo, y cada combinación se representa en el resultado.
Unión interna: Requiere que los valores clave estén en ambas tablas para que los registros aparezcan en la tabla de resultados. Los registros solo aparecerán en la combinación si los valores clave coinciden en ambas tablas.
Unión izquierda: Cada fila de la tabla de la izquierda aparece en los resultados, sin importar si hay coincidencias en la tabla de la derecha.
Unión derecha: Es lo contrario a una unión izquierda. Cada fila de la tabla de la derecha aparece en los resultados, sin importar si hay coincidencias en la tabla de la izquierda.
Para obtener más información sobre uniones, consulta la Página de uniones.
Usarás un conjunto de datos de comercio electrónico que tiene millones de registros de Google Analytics para Google Merchandise Store cargados en BigQuery. Tienes una copia de ese conjunto de datos para este lab y explorarás los campos y las filas disponibles para obtener estadísticas.
Para obtener información sobre la sintaxis, que te ayudará a seguir y actualizar las consultas, lee el artículo Sintaxis de consultas en SQL estándar.
Actividades
En este lab, aprenderás a realizar las siguientes tareas:
Usar BigQuery para explorar filas duplicadas en un conjunto de datos y solucionar problemas relacionados
Crear uniones entre tablas de datos
Elegir entre diferentes tipos de uniones
Configuración y requisitos
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
Acceso a un navegador de Internet estándar. Se recomienda el navegador Chrome.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá un diálogo para que selecciones la forma de pago.
A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
El botón para abrir la consola de Google Cloud
El tiempo restante
Las credenciales temporales que debes usar para el lab
Otra información para completar el lab, si es necesaria
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}}
También puedes encontrar el nombre de usuario en el panel Detalles del lab.
Haz clic en Siguiente.
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}}
También puedes encontrar la contraseña en el panel Detalles del lab.
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud.
Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
Haz clic para avanzar por las páginas siguientes:
Acepta los Términos y Condiciones.
No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Nota: Para acceder a los productos y servicios de Google Cloud, haz clic en el menú de navegación o escribe el nombre del servicio o producto en el campo Buscar.
Cómo abrir la consola de BigQuery
En la consola de Google Cloud, seleccione elmenú de navegación > BigQuery.
Se abrirá el cuadro de mensaje Te damos la bienvenida a BigQuery en la consola de Cloud. Este cuadro de mensaje contiene un vínculo a la guía de inicio rápido y las notas de la versión.
Haga clic en Listo.
Se abrirá la consola de BigQuery.
Tarea 1. Crea un nuevo conjunto de datos para almacenar tus tablas
En tu proyecto de BigQuery, crea un nuevo conjunto de datos llamado ecommerce.
Haz clic en los tres puntos que se ubican junto al ID de tu proyecto y selecciona Crear conjunto de datos.
Se abrirá el diálogo Crear conjunto de datos.
Define el ID del conjunto de datos en ecommerce.
Deja las otras opciones con sus valores predeterminados y haz clic en Crear conjunto de datos.
En el panel izquierdo, puedes ver una tabla ecommerce en la lista debajo de tu proyecto.
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear un conjunto de datos nuevo
Tarea 2. Fija el proyecto del lab en BigQuery
Situación: Tu equipo te proporciona un conjunto de datos nuevo sobre los niveles de inventario para cada uno de tus productos en venta en tu sitio web de comercio electrónico. Recomendamos que te familiarices con los productos del sitio web y con los campos que podrías usar para unirlos a otros conjuntos de datos.
El proyecto que contiene el nuevo conjunto de datos es data-to-insights.
En el menú de navegación () de la consola de Google Cloud, haz clic en BigQuery.
Se abrirá el cuadro de mensaje de bienvenida a BigQuery en la consola de Cloud.
Nota: Allí, se proporciona un vínculo para acceder a la guía de inicio rápido y actualizaciones de IU.
Haz clic en Listo.
Los conjuntos de datos públicos de BigQuery no se muestran de forma predeterminada. Para abrir el proyecto de conjuntos de datos públicos, copia data-to-insights (para pegarlo en un diálogo en el siguiente paso).
Haz clic en + Agregar > Destaca un proyecto por nombre y, luego, pega el nombre data-to-insights.
Haz clic en Destacar.
El proyecto data-to-insights aparecerá en la sección Explorador.
Tarea 3. Examina los campos
A continuación, explora los productos y campos del sitio web que puedes usar para crear consultas y analizar el conjunto de datos.
En la sección Recursos del panel de la izquierda, navega a data-to-insights > ecommerce > all_sessions_raw.
A la derecha, debajo del Editor de consultas, haz clic en la pestaña Esquema para ver los Campos y la información de cada campo.
Tarea 4. Identifica un campo clave en tu conjunto de datos de comercio electrónico
Realiza un análisis más detallado de los productos y los campos. Recomendamos que te familiarices con los productos del sitio web y con los campos que podrías usar para unirlos a otros conjuntos de datos.
Examina los registros
En esta sección, descubrirás cuántos nombres y SKU de productos hay en tu sitio web y si alguno de esos campos es único.
Descubre cuántos nombres y SKU de productos hay en el sitio web. Copia y pega la siguiente consulta en el EDITOR de BigQuery:
#standardSQL
# how many products are on the website?
SELECT DISTINCT
productSKU,
v2ProductName
FROM `data-to-insights.ecommerce.all_sessions_raw`
Haz clic en Ejecutar.
Observa los resultados de paginación en la consola para conocer la cantidad total de registros que se devolvieron.
Pero ¿los resultados implican que hay muchos SKU de productos únicos? Como analista de datos, una de las primeras consultas que ejecutarás será para determinar la unicidad de los valores de datos.
Borra la consulta anterior y ejecuta la que se indica a continuación para ver la cantidad de SKU distintos con la función DISTINCT:
#standardSQL
# find the count of unique SKUs
SELECT
DISTINCT
productSKU
FROM `data-to-insights.ecommerce.all_sessions_raw`
Examina la relación entre SKU y nombre
Ahora, determina qué productos tienen más de un SKU y qué SKU tienen más de un nombre de producto.
Borra la consulta anterior y ejecuta la que se indica a continuación para determinar si algunos nombres de producto tienen más de un SKU. Se usa la función STRING_AGG() para agregar todos los SKU de producto asociados a un nombre de producto en valores separados por comas.
SELECT
v2ProductName,
COUNT(DISTINCT productSKU) AS SKU_count,
STRING_AGG(DISTINCT productSKU LIMIT 5) AS SKU
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE productSKU IS NOT NULL
GROUP BY v2ProductName
HAVING SKU_count > 1
ORDER BY SKU_count DESC
Ya vimos el caso de 1 producto con 12 SKU. ¿Qué sucede en el caso de 1 SKU? ¿Puede asignarse a más de 1 producto?
Borra la consulta anterior y ejecuta la que se indica a continuación para averiguarlo:
SELECT
productSKU,
COUNT(DISTINCT v2ProductName) AS product_count,
STRING_AGG(DISTINCT v2ProductName LIMIT 5) AS product_name
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE v2ProductName IS NOT NULL
GROUP BY productSKU
HAVING product_count > 1
ORDER BY product_count DESC
Nota: Intenta reemplazar STRING_AGG() con ARRAY_AGG(). Se ve bien, ¿no? BigQuery es compatible de forma nativa con los valores de array anidados. Obtén más información en la guía Trabaja con arrays.
En la siguiente sección, verás por qué esta relación de datos de varios a varios puede convertirse en un problema.
Haz clic en Revisar mi progreso para verificar el objetivo.
Identificar un campo clave en tu conjunto de datos de comercio electrónico
Tarea 5. Error: clave no única
Para el seguimiento del inventario, un SKU está pensado para identificar de manera inequívoca a cada uno de los productos. Para nosotros, será la base de tu condición de UNIÓN cuando busques información de otras tablas. Tener una clave que no es única puede provocar graves problemas de datos, como verás a continuación.
Escribe una consulta para identificar todos los nombres de producto para el SKU 'GGOEGPJC019099'.
Solución posible:
SELECT DISTINCT
v2ProductName,
productSKU
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE productSKU = 'GGOEGPJC019099'
Haz clic en Ejecutar.
v2ProductName
productSKU
7" Dog Frisbee
GGOEGPJC019099
7" Dog Frisbee
GGOEGPJC019099
Google 7-inch Dog Flying Disc Blue
GGOEGPJC019099
A partir de los resultados de la consulta, parece que hay tres nombres diferentes para el mismo producto. En este ejemplo, hay un carácter especial en un nombre y un nombre apenas diferente para otro:
Une datos del sitio web a tu lista de inventario de productos
Ahora, observa el impacto que produce unir un conjunto de datos con varios productos para un único SKU. Primero, explora el conjunto de datos del inventario de productos (la tabla products) para ver si este SKU es único allí.
Borra la consulta anterior y ejecuta la que se indica a continuación:
SELECT
SKU,
name,
stockLevel
FROM `data-to-insights.ecommerce.products`
WHERE SKU = 'GGOEGPJC019099'
Error de unión: relaciones accidentales de SKU "varios a uno"
Ahora tienes dos conjuntos de datos: uno para el nivel de stock del inventario y otro para nuestras estadísticas del sitio web. UNE el conjunto de datos del inventario a los nombres de producto de tu sitio web y a los SKU, de manera que puedas asociar el nivel de stock del inventario con cada producto a la venta en el sitio web.
Borra la consulta anterior y ejecuta la que se indica a continuación:
SELECT DISTINCT
website.v2ProductName,
website.productSKU,
inventory.stockLevel
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE productSKU = 'GGOEGPJC019099'
Ahora, expande la consulta anterior para SUMAR el inventario disponible por producto.
Borra la consulta anterior y ejecuta la que se indica a continuación:
WITH inventory_per_sku AS (
SELECT DISTINCT
website.v2ProductName,
website.productSKU,
inventory.stockLevel
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE productSKU = 'GGOEGPJC019099'
)
SELECT
productSKU,
SUM(stockLevel) AS total_inventory
FROM inventory_per_sku
GROUP BY productSKU
¡Vaya! Es 154 x 3 = 462 o el triple del inventario. Esto se conoce como una unión cruzada accidental (un tema que volveremos a revisar más adelante).
Haz clic en Revisar mi progreso para verificar el objetivo.
Error: clave no única
Tarea 6. Solución al error de unión: utilizar SKU distintos antes de hacer la unión
¿Cuáles son las opciones para resolver tu dilema de recuento triple? Primero, solo debes seleccionar SKU distintos del sitio web antes de unirlos a otras bases de datos.
Sabes que puede haber más de un nombre de producto (como 7" Dog Frisbee) que compartan el mismo SKU.
Recopila todos los nombres posibles en un array:
SELECT
productSKU,
ARRAY_AGG(DISTINCT v2ProductName) AS push_all_names_into_array
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE productSKU = 'GGOEGAAX0098'
GROUP BY productSKU
Ahora, en lugar de tener una fila para cada nombre de producto, solo tendrás una fila para cada SKU único.
Si quieres anular la duplicación de los nombres de producto, podrías LIMITAR el array del siguiente modo:
SELECT
productSKU,
ARRAY_AGG(DISTINCT v2ProductName LIMIT 1) AS push_all_names_into_array
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE productSKU = 'GGOEGAAX0098'
GROUP BY productSKU
Error de unión: la pérdida de registros de datos después de una unión
Ahora está todo listo para que unas tu conjunto de datos de inventario de productos de nuevo.
Borra la consulta anterior y ejecuta la que se indica a continuación:
#standardSQL
SELECT DISTINCT
website.productSKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
Parece que se perdieron 819 SKU después de unir los conjuntos de datos. Para investigar esta pérdida, agrega más especificidad en tus campos (una columna de SKU para cada conjunto de datos):
Borra la consulta anterior y ejecuta la que se indica a continuación:
#standardSQL
# pull ID fields from both tables
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
# IDs are present in both tables, how can you dig deeper?
Parece que los SKU están presentes en ambos conjuntos de datos después de la unión de estos 1,090 registros. ¿Cómo puedes encontrar los registros que faltan?
Solución al problema de unión: Seleccionar el tipo de unión correcto y filtrar por valores NULL
El tipo de instrucción JOIN predeterminado es una INNER JOIN que devuelve registros solo si hay una coincidencia de SKU en las tablas unidas de la izquierda y de la derecha.
Vuelve a escribir la consulta para usar un tipo de unión diferente y, así, incluir todos los registros de la tabla del sitio web, sin importar si hay una coincidencia en el registro de SKU del inventario de productos. Opciones de tipo de instrucciones de unión: INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN, CROSS JOIN.
Solución posible:
#standardSQL
# the secret is in the JOIN type
# pull ID fields from both tables
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
LEFT JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
Haz clic en Ejecutar.
Usaste correctamente LEFT JOIN para devolver los 1,909 SKU de sitio web originales en tus resultados.
¿Cuántos SKU faltan del conjunto del inventario de productos?
Escribe una consulta para filtrar los valores NULL de la tabla del inventario.
Solución posible:
#standardSQL
# find product SKUs in website table but not in product inventory table
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
LEFT JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE inventory.SKU IS NULL
Haz clic en Ejecutar.
Pregunta: ¿Cuántos productos faltan?
Respuesta: Faltan 819 productos (EL SKU ES NULL) en el conjunto de datos del inventario.
Borra la consulta anterior y ejecuta la que se indica a continuación para confirmar el uso de uno de los SKU específicos del conjunto de datos del sitio web:
#standardSQL
# you can even pick one and confirm
SELECT * FROM `data-to-insights.ecommerce.products`
WHERE SKU = 'GGOEGATJ060517'
# query returns zero results
Ahora, ¿qué sucede en la situación inversa? ¿Hay productos del conjunto de datos del inventario de productos que no aparecen en el sitio web?
Escribe una consulta con un tipo de unión diferente para investigar.
Solución posible:
#standardSQL
# reverse the join
# find records in website but not in inventory
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
RIGHT JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE website.productSKU IS NULL
Haz clic en Ejecutar.
Respuesta: Sí. Hay dos SKU de producto que no están en el conjunto de datos del sitio web.
A continuación, agrega más campos del conjunto de datos del inventario de productos para obtener más detalles.
Borra la consulta anterior y ejecuta la que se indica a continuación:
#standardSQL
# what are these products?
# add more fields in the SELECT STATEMENT
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.*
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
RIGHT JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE website.productSKU IS NULL
¿Por qué faltarían los siguientes productos del conjunto de datos del sitio web de comercio electrónico?
website_SKU
SKU
name
orderedQuantity
stockLevel
restockingLeadTime
sentimentScore
sentimentMagnitude
null
GGOBJGOWUSG69402
USB wired soundbar - in store only
10
15
2
1.0
1.0
null
GGADFBSBKS42347
PC gaming speakers
0
100
1
null
null
Respuestas posibles:
Un producto nuevo (sin pedidos ni “sentimentScore”) y un producto que se encuentra “solo en una tienda física”.
Otro es un producto nuevo con 0 pedidos.
¿Por qué el producto nuevo no se mostraría en tu conjunto de datos del sitio web?
El conjunto de datos del sitio web está formado por transacciones de pedidos antiguos realizadas por clientes. Los productos nuevos que no se han vendido no aparecerán en las estadísticas web hasta que se los vea o se los compre.
Nota: Por lo general, no verás instrucciones RIGHT JOIN en las consultas de producción. Simplemente usarás LEFT JOIN y cambiarás el orden de las tablas.
¿Qué tal si quisieras realizar una consulta que enumere todos los productos que falten, ya sea del sitio web o del inventario?
Escribe una consulta con un tipo de unión diferente.
Solución posible:
#standardSQL
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
FULL JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE website.productSKU IS NULL OR inventory.SKU IS NULL
Haz clic en Ejecutar.
Tienes 819 + 2 = 821 SKU de productos.
LEFT JOIN + RIGHT JOIN = FULL JOIN, que devuelve todos los registros de ambas tablas, sin importar que coincidan las claves de unión. Luego, filtra todos los lugares donde no haya coincidencia de cada lado.
Error de unión: unión cruzada accidental
No conocer la relación entre las claves de tabla de datos (1:1, 1:N, N:N) puede devolver resultados inesperados y reducir de manera significativa el rendimiento de las consultas.
El último tipo de unión es CROSS JOIN.
Crea una tabla nueva con un porcentaje de descuento en todo el sitio que quieras aplicar a todos los productos de la categoría “Liquidación”.
Borra la consulta anterior y ejecuta la que se indica a continuación:
#standardSQL
CREATE OR REPLACE TABLE ecommerce.site_wide_promotion AS
SELECT .05 AS discount;
En el panel de la izquierda, site_wide_promotion ahora aparece en la sección Resource debajo de tu proyecto y conjunto de datos.
Borra la consulta anterior y ejecuta la que se indica a continuación para descubrir cuántos productos hay en liquidación:
SELECT DISTINCT
productSKU,
v2ProductCategory,
discount
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
CROSS JOIN ecommerce.site_wide_promotion
WHERE v2ProductCategory LIKE '%Clearance%'
Nota: Observa que, para usar una CROSS JOIN, no hay ninguna condición de unión (p. ej., "ON" o "USING"). El campo simplemente se multiplica por el primer conjunto de datos o un descuento de 0.05 en todos los artículos.
Observa el impacto de agregar de manera accidental más de un registro a la tabla de descuentos.
Borra la consulta anterior y ejecuta la que se indica a continuación para insertar dos registros más a la tabla de promoción:
INSERT INTO ecommerce.site_wide_promotion (discount)
VALUES (.04),
(.03);
Ahora, observa los valores de datos de la tabla de promoción.
Borra la consulta anterior y ejecuta la que se indica a continuación:
SELECT discount FROM ecommerce.site_wide_promotion
¿Cuántos registros se devolvieron?
Respuesta: 3
¿Qué ocurre cuando aplicas de nuevo el descuento en los 82 productos en liquidación?
Borra la consulta anterior y ejecuta la que se indica a continuación:
SELECT DISTINCT
productSKU,
v2ProductCategory,
discount
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
CROSS JOIN ecommerce.site_wide_promotion
WHERE v2ProductCategory LIKE '%Clearance%'
¿Cuántos productos se devuelven?
Respuesta: En lugar de 82, ahora se devuelven 246, que es una cantidad mayor de registros que los que tenía la tabla original con la que comenzaste.
Investiguemos la causa subyacente examinando el SKU de un producto.
Borra la consulta anterior y ejecuta la que se indica a continuación:
#standardSQL
SELECT DISTINCT
productSKU,
v2ProductCategory,
discount
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
CROSS JOIN ecommerce.site_wide_promotion
WHERE v2ProductCategory LIKE '%Clearance%'
AND productSKU = 'GGOEGOLC013299'
¿Cuál es el impacto de CROSS JOIN?
Respuesta: Ya que hay 3 códigos de descuento para unir de manera cruzada, estás multiplicando el conjunto de datos original por 3.
Nota: Este comportamiento no se limita a las uniones cruzadas. Con una unión normal, puedes realizar una unión cruzada por accidente cuando las relaciones entre los datos son de varios a varios. Esto puede traducirse fácilmente en que se devuelvan millones o incluso miles de millones de registros de manera accidental.
La solución es conocer las relaciones de tus datos antes de hacer la unión y no suponer que las claves son únicas.
Haz clic en Revisar mi progreso para verificar el objetivo.
Solución para el error de unión
¡Felicitaciones!
Completaste este lab y resolviste algunos errores graves de uniones SQL. Para ello, identificaste los registros duplicados y aprendiste cuándo usar cada tipo de UNIÓN. Buen trabajo.
Próximos pasos y más información
¿Tienes una cuenta de Google Analytics y deseas consultar tus propios conjuntos de datos en BigQuery? Sigue esta guía de exportación.
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Última actualización del manual: 3 de febrero de 2024
Prueba más reciente del lab: 20 de septiembre de 2023
Copyright 2025 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.
Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
.
Los labs tienen un límite de tiempo y no tienen la función de pausa. Si finalizas el lab, deberás reiniciarlo desde el principio.
En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar
Usa la navegación privada
Copia el nombre de usuario y la contraseña proporcionados para el lab
Haz clic en Abrir la consola en modo privado
Accede a la consola
Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
Acepta las condiciones y omite la página de recursos de recuperación
No hagas clic en Finalizar lab, a menos que lo hayas terminado o quieras reiniciarlo, ya que se borrará tu trabajo y se quitará el proyecto
Este contenido no está disponible en este momento
Te enviaremos una notificación por correo electrónico cuando esté disponible
¡Genial!
Nos comunicaremos contigo por correo electrónico si está disponible
Un lab a la vez
Confirma para finalizar todos los labs existentes y comenzar este
Usa la navegación privada para ejecutar el lab
Usa una ventana de navegación privada o de Incógnito para ejecutar el lab. Así
evitarás cualquier conflicto entre tu cuenta personal y la cuenta
de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
En este lab, explorarás las relaciones entre las tablas de datos y los errores que hay que evitar cuando se unen.
Duración:
0 min de configuración
·
Acceso por 60 min
·
60 min para completar