Junção de 2 Tabelas
Conseguimos a atenção de uma empresa que possui uma pequena loja online. Eles têm 2 tabelas que estão relacionadas entre si. A primeira tabela contém informações sobre os produtos vendidos na loja online.
Veja como é a tabela product:
A segunda tabela contém as categorias de produtos no site, juntamente com uma breve descrição para cada categoria.
Veja como é a tabela category:
Nossa primeira tarefa é unir essas duas tabelas para descobrir quantos produtos existem em cada categoria. Utilizaremos uma instrução JOIN para isso.
Antes de começar a tarefa, vamos entender o que é uma instrução JOIN e como ela funciona.
Para unir duas tabelas, elas precisam compartilhar uma coluna em comum. Vamos ver como o JOIN funciona usando as tabelas employees e department. A coluna em comum é employees.department e departments.name.
Nota
Ao escrever colunas dessas tabelas, comece com o nome da tabela, adicione um ponto e depois o nome da coluna. Isso ajuda a manter o código claro, especialmente quando as tabelas possuem colunas com o mesmo nome. Assim, o SQL sabe exatamente de qual tabela e coluna você está se referindo.
Segue a tarefa de obter o salário total dos funcionários em cada tipo de departamento (tech/non-tech).
A consulta para realizar essa tarefa será assim:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Vamos detalhar como utilizamos o JOIN em nossa consulta:
- Na parte
SELECT, listam-se as colunas desejadas de ambas as tabelas, incluindo o nome da tabela para maior clareza; - Na parte
JOIN, especifica-se a tabela a ser unida e a coluna em comum que as conecta. Neste caso, sãoemployees.departmentedepartment.name; - Em seguida, os dados são agrupados por
typepara calcular o salário total utilizando a funçãoSUM().
Se isso parecer complexo, segue uma sintaxe simples para utilizar o JOIN:
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Note
Diferente da cláusula
UNION, a instruçãoJOINpermite combinar tabelas inteiras, não apenas as colunas que compartilham. Além disso, com oJOIN, não há necessidade de subconsultas como ocorre com oUNION.
Swipe to start coding
Você precisa unir as duas tabelas: category e product. As colunas em comum entre essas duas tabelas são product.category_id e category.id.
Sua tarefa é encontrar o valor total de produtos em cada categoria. Para isso, é necessário calcular a soma da coluna product.amount.
Utilize o alias total_amount para essa coluna.
Ao final da sua consulta, ordene o resultado pela coluna total_amount em ordem crescente.
Na resposta, devem aparecer 2 colunas: category.name e total.amount.
Instruções Resumidas
- Recupere a coluna
category.namee a soma da colunaproduct.amountda tabelaproduct. - Atribua o alias
total_amountà segunda coluna. - Una a tabela
categoryutilizando uma instruçãoJOIN. - Relacione as tabelas pela coluna em comum
product.category_id = category.id. - Agrupe os resultados por
category.name. - Ordene os resultados por
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?
How do I count the number of products in each category using a JOIN?
Incrível!
Completion taxa melhorada para 4
Junção de 2 Tabelas
Deslize para mostrar o menu
Conseguimos a atenção de uma empresa que possui uma pequena loja online. Eles têm 2 tabelas que estão relacionadas entre si. A primeira tabela contém informações sobre os produtos vendidos na loja online.
Veja como é a tabela product:
A segunda tabela contém as categorias de produtos no site, juntamente com uma breve descrição para cada categoria.
Veja como é a tabela category:
Nossa primeira tarefa é unir essas duas tabelas para descobrir quantos produtos existem em cada categoria. Utilizaremos uma instrução JOIN para isso.
Antes de começar a tarefa, vamos entender o que é uma instrução JOIN e como ela funciona.
Para unir duas tabelas, elas precisam compartilhar uma coluna em comum. Vamos ver como o JOIN funciona usando as tabelas employees e department. A coluna em comum é employees.department e departments.name.
Nota
Ao escrever colunas dessas tabelas, comece com o nome da tabela, adicione um ponto e depois o nome da coluna. Isso ajuda a manter o código claro, especialmente quando as tabelas possuem colunas com o mesmo nome. Assim, o SQL sabe exatamente de qual tabela e coluna você está se referindo.
Segue a tarefa de obter o salário total dos funcionários em cada tipo de departamento (tech/non-tech).
A consulta para realizar essa tarefa será assim:
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Vamos detalhar como utilizamos o JOIN em nossa consulta:
- Na parte
SELECT, listam-se as colunas desejadas de ambas as tabelas, incluindo o nome da tabela para maior clareza; - Na parte
JOIN, especifica-se a tabela a ser unida e a coluna em comum que as conecta. Neste caso, sãoemployees.departmentedepartment.name; - Em seguida, os dados são agrupados por
typepara calcular o salário total utilizando a funçãoSUM().
Se isso parecer complexo, segue uma sintaxe simples para utilizar o JOIN:
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Note
Diferente da cláusula
UNION, a instruçãoJOINpermite combinar tabelas inteiras, não apenas as colunas que compartilham. Além disso, com oJOIN, não há necessidade de subconsultas como ocorre com oUNION.
Swipe to start coding
Você precisa unir as duas tabelas: category e product. As colunas em comum entre essas duas tabelas são product.category_id e category.id.
Sua tarefa é encontrar o valor total de produtos em cada categoria. Para isso, é necessário calcular a soma da coluna product.amount.
Utilize o alias total_amount para essa coluna.
Ao final da sua consulta, ordene o resultado pela coluna total_amount em ordem crescente.
Na resposta, devem aparecer 2 colunas: category.name e total.amount.
Instruções Resumidas
- Recupere a coluna
category.namee a soma da colunaproduct.amountda tabelaproduct. - Atribua o alias
total_amountà segunda coluna. - Una a tabela
categoryutilizando uma instruçãoJOIN. - Relacione as tabelas pela coluna em comum
product.category_id = category.id. - Agrupe os resultados por
category.name. - Ordene os resultados por
total_amount.
Solução
Obrigado pelo seu feedback!
single