Unir 2 Tablas
Hemos captado la atención de una empresa que posee una pequeña tienda en línea. Tienen 2 tablas que están relacionadas entre sí. La primera tabla contiene información sobre los productos vendidos en la tienda en línea.
La segunda tabla contiene las categorías de productos en el sitio web, junto con una breve descripción de cada categoría.
Nuestra primera tarea es unir estas dos tablas para averiguar cuántos productos hay en cada categoría. Utilizaremos una sentencia JOIN para lograrlo.
Antes de comenzar con la tarea, vamos a entender qué es una sentencia JOIN y cómo funciona.
Para unir dos tablas, deben compartir una columna en común. Veamos cómo funciona JOIN utilizando las tablas employees y department. Su columna en común es employees.department y departments.name.
Al escribir columnas de estas tablas, comience con el nombre de la tabla, agregue un punto y luego el nombre de la columna. Esto ayuda a mantener el código claro, especialmente cuando las tablas tienen columnas con el mismo nombre. Indica a SQL exactamente a qué tabla y columna se refiere.
Aquí está la tarea de obtener el salario total de los empleados en cada tipo de departamento (tech/non-tech).
La consulta para realizar esta tarea se verá así:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Analicemos cómo utilizamos JOIN en nuestra consulta:
- En la parte
SELECT, se enumeran las columnas deseadas de ambas tablas, asegurando incluir el nombre de la tabla para mayor claridad; - En la parte
JOIN, se especifica la tabla a unir y la columna común que las vincula. En este caso, sonemployees.departmentydepartment.name; - Luego, se agrupan los datos por
typepara calcular el salario total utilizando la funciónSUM().
Si esto parece complejo, aquí tienes una sintaxis simple para usar JOIN:
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
A diferencia de la cláusula UNION, la sentencia JOIN permite combinar tablas completas, no solo las columnas que comparten. Además, con JOIN no es necesario utilizar subconsultas como ocurre con UNION.
Swipe to start coding
Necesitas unir las dos tablas: category y product. Las columnas comunes para estas dos tablas son product.category_id y category.id.
Tu tarea es encontrar la cantidad total de productos en cada categoría. Para ello, debes calcular la suma de la columna product.amount.
Utiliza el alias total_amount para esta columna.
Al final de tu consulta, ordena el resultado por la columna total_amount en orden ascendente.
En la respuesta, debes tener 2 columnas: category.name y total.amount.
Instrucciones breves
- Recuperar la columna
category.namey la suma de la columnaproduct.amountde la tablaproduct. - Asignar el alias
total_amounta la segunda columna. - Unir la tabla
categoryutilizando una sentenciaJOIN. - Relacionar las tablas en la columna común
product.category_id = category.id. - Agrupar los resultados por
category.name. - Ordenar los resultados por
total_amount.
Solución
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Can you explain the different types of SQL JOINs?
How do I know which column to use for joining tables?
Can you show an example using the products and categories tables?
Genial!
Completion tasa mejorada a 4
Unir 2 Tablas
Desliza para mostrar el menú
Hemos captado la atención de una empresa que posee una pequeña tienda en línea. Tienen 2 tablas que están relacionadas entre sí. La primera tabla contiene información sobre los productos vendidos en la tienda en línea.
La segunda tabla contiene las categorías de productos en el sitio web, junto con una breve descripción de cada categoría.
Nuestra primera tarea es unir estas dos tablas para averiguar cuántos productos hay en cada categoría. Utilizaremos una sentencia JOIN para lograrlo.
Antes de comenzar con la tarea, vamos a entender qué es una sentencia JOIN y cómo funciona.
Para unir dos tablas, deben compartir una columna en común. Veamos cómo funciona JOIN utilizando las tablas employees y department. Su columna en común es employees.department y departments.name.
Al escribir columnas de estas tablas, comience con el nombre de la tabla, agregue un punto y luego el nombre de la columna. Esto ayuda a mantener el código claro, especialmente cuando las tablas tienen columnas con el mismo nombre. Indica a SQL exactamente a qué tabla y columna se refiere.
Aquí está la tarea de obtener el salario total de los empleados en cada tipo de departamento (tech/non-tech).
La consulta para realizar esta tarea se verá así:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Analicemos cómo utilizamos JOIN en nuestra consulta:
- En la parte
SELECT, se enumeran las columnas deseadas de ambas tablas, asegurando incluir el nombre de la tabla para mayor claridad; - En la parte
JOIN, se especifica la tabla a unir y la columna común que las vincula. En este caso, sonemployees.departmentydepartment.name; - Luego, se agrupan los datos por
typepara calcular el salario total utilizando la funciónSUM().
Si esto parece complejo, aquí tienes una sintaxis simple para usar JOIN:
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
A diferencia de la cláusula UNION, la sentencia JOIN permite combinar tablas completas, no solo las columnas que comparten. Además, con JOIN no es necesario utilizar subconsultas como ocurre con UNION.
Swipe to start coding
Necesitas unir las dos tablas: category y product. Las columnas comunes para estas dos tablas son product.category_id y category.id.
Tu tarea es encontrar la cantidad total de productos en cada categoría. Para ello, debes calcular la suma de la columna product.amount.
Utiliza el alias total_amount para esta columna.
Al final de tu consulta, ordena el resultado por la columna total_amount en orden ascendente.
En la respuesta, debes tener 2 columnas: category.name y total.amount.
Instrucciones breves
- Recuperar la columna
category.namey la suma de la columnaproduct.amountde la tablaproduct. - Asignar el alias
total_amounta la segunda columna. - Unir la tabla
categoryutilizando una sentenciaJOIN. - Relacionar las tablas en la columna común
product.category_id = category.id. - Agrupar los resultados por
category.name. - Ordenar los resultados por
total_amount.
Solución
¡Gracias por tus comentarios!
single