UNIR 2 Tabelas
We've got the attention of a company that owns a small online store. They have 2 tables that are related to each other. The first table contains information about the products sold in the online store.
Here's what the product table looks like:
The second table contains product categories on the website, along with a brief description for each category.
Here's what the category table looks like:
Our first task is to join these two tables to find out how many products are in each category. We'll use a JOIN statement to achieve this.
Before diving into the task, let's understand what a JOIN statement is and how it works.
To join two tables, they need to share a common column. Let's see how JOIN works using the employees and department tables. Their common column is employees.department and departments.name.
Note
When writing columns from these tables, start with the table name, add a dot, and then the column name. This helps keep the code clear, especially when tables have columns with the same name. It tells SQL exactly which table and column you mean.
Para juntar 2 tabelas, elas devem ter uma coluna em comum entre si. Vamos considerar o uso de JOIN usando o exemplo das tabelas employees e department. Lembrarei que a coluna em comum deles é employees.department e departments.name.
Nota
Perceba como escrevi as colunas dessas tabelas. Primeiro, escrevo o nome da tabela, depois coloco um ponto e o nome da coluna. Quando usamos mais de uma tabela em uma consulta, precisamos especificar a tabela da qual estamos tirando a coluna para tornar o código legível. Além disso, no caso em que tabelas têm colunas com o mesmo nome, precisamos que o SQL entenda a qual tabela e coluna estamos nos referindo.
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Let's break down how we used JOIN in our query:
- In the
SELECTpart, we list the columns we want from both tables, making sure to include the table name for clarity; - In the
JOINpart, we specify the table to join and the common column that links them. Here, it'semployees.departmentanddepartment.name; - We then group the data by
typeto calculate the total salary using theSUM()function.
If this seems complex, here's a simple syntax for using JOIN:
Vamos entender passo a passo o que fizemos e como usamos JOIN:
- Na seção
SELECT, especificamos as colunas que precisamos recuperar de duas tabelas, indicando o nome da tabela a que a coluna pertence; - Na seção
JOIN, especificamos a tabela que queremos unir, seguida pela especificação da coluna comum. No nosso caso, éemployees.departmentedepartment.name; - Em seguida, agregamos os dados por
type(já que temos uma função de agregaçãoSUM()na seçãoSELECTpara encontrar o salário total) e obtemos o resultado que nos interessa.
A consulta pode parecer complexa, então vamos olhar para a sintaxe geral para usar JOIN:
Note
Unlike the
UNIONclause, theJOINstatement lets us combine entire tables, not just the columns they share. Plus, withJOIN, there's no need for subqueries like withUNION.
Swipe to start coding
Your need to join the two tables: category and product. The common columns for these two tables are product.category_id and category.id.
Your task is to find the total amount of products in each category. To do this, you need to calculate the sum of the product.amount column.
Use the alias total_amount for this column.
At the end of your query, sort the result by the total_amount column in ascending order.
In the response, you should have 2 columns: category.name and total.amount.
Brief Instructions
- Retrieve the
category.namecolumn and the sum of theproduct.amountcolumn from theproducttable. - Assign the alias
total_amountto the second column. - Join the
categorytable using aJOINstatement. - Match the tables on the common column
product.category_id = category_id. - Group the results by
category.name. - Sort the results by
total_amount.
Solução
Obrigado pelo seu feedback!
single
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
What are the different types of JOINs in SQL?
Can you explain how to join the product and category tables using SQL?
Why do we need to use table names before column names in JOIN queries?
Incrível!
Completion taxa melhorada para 4
UNIR 2 Tabelas
Deslize para mostrar o menu
We've got the attention of a company that owns a small online store. They have 2 tables that are related to each other. The first table contains information about the products sold in the online store.
Here's what the product table looks like:
The second table contains product categories on the website, along with a brief description for each category.
Here's what the category table looks like:
Our first task is to join these two tables to find out how many products are in each category. We'll use a JOIN statement to achieve this.
Before diving into the task, let's understand what a JOIN statement is and how it works.
To join two tables, they need to share a common column. Let's see how JOIN works using the employees and department tables. Their common column is employees.department and departments.name.
Note
When writing columns from these tables, start with the table name, add a dot, and then the column name. This helps keep the code clear, especially when tables have columns with the same name. It tells SQL exactly which table and column you mean.
Para juntar 2 tabelas, elas devem ter uma coluna em comum entre si. Vamos considerar o uso de JOIN usando o exemplo das tabelas employees e department. Lembrarei que a coluna em comum deles é employees.department e departments.name.
Nota
Perceba como escrevi as colunas dessas tabelas. Primeiro, escrevo o nome da tabela, depois coloco um ponto e o nome da coluna. Quando usamos mais de uma tabela em uma consulta, precisamos especificar a tabela da qual estamos tirando a coluna para tornar o código legível. Além disso, no caso em que tabelas têm colunas com o mesmo nome, precisamos que o SQL entenda a qual tabela e coluna estamos nos referindo.
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Let's break down how we used JOIN in our query:
- In the
SELECTpart, we list the columns we want from both tables, making sure to include the table name for clarity; - In the
JOINpart, we specify the table to join and the common column that links them. Here, it'semployees.departmentanddepartment.name; - We then group the data by
typeto calculate the total salary using theSUM()function.
If this seems complex, here's a simple syntax for using JOIN:
Vamos entender passo a passo o que fizemos e como usamos JOIN:
- Na seção
SELECT, especificamos as colunas que precisamos recuperar de duas tabelas, indicando o nome da tabela a que a coluna pertence; - Na seção
JOIN, especificamos a tabela que queremos unir, seguida pela especificação da coluna comum. No nosso caso, éemployees.departmentedepartment.name; - Em seguida, agregamos os dados por
type(já que temos uma função de agregaçãoSUM()na seçãoSELECTpara encontrar o salário total) e obtemos o resultado que nos interessa.
A consulta pode parecer complexa, então vamos olhar para a sintaxe geral para usar JOIN:
Note
Unlike the
UNIONclause, theJOINstatement lets us combine entire tables, not just the columns they share. Plus, withJOIN, there's no need for subqueries like withUNION.
Swipe to start coding
Your need to join the two tables: category and product. The common columns for these two tables are product.category_id and category.id.
Your task is to find the total amount of products in each category. To do this, you need to calculate the sum of the product.amount column.
Use the alias total_amount for this column.
At the end of your query, sort the result by the total_amount column in ascending order.
In the response, you should have 2 columns: category.name and total.amount.
Brief Instructions
- Retrieve the
category.namecolumn and the sum of theproduct.amountcolumn from theproducttable. - Assign the alias
total_amountto the second column. - Join the
categorytable using aJOINstatement. - Match the tables on the common column
product.category_id = category_id. - Group the results by
category.name. - Sort the results by
total_amount.
Solução
Obrigado pelo seu feedback!
single