Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Junção de 2 Tabelas | Junção de Tabelas
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
SQL Intermediário

bookJunção de 2 Tabelas

Chamamos 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.

A segunda tabela contém as categorias de produtos no site, juntamente com uma breve descrição para cada categoria.

Nossa primeira tarefa é unir essas duas tabelas para descobrir quantos produtos existem em cada categoria. Utilizaremos uma instrução JOIN para isso.

Antes de iniciar 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.

Note
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. Isso informa ao SQL exatamente de qual tabela e coluna você está se referindo.

Aqui está a tarefa de recuperar o salário total dos funcionários em cada tipo de departamento (tech/non-tech).

A consulta para realizar essa tarefa será assim:

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Vamos analisar como utilizamos o JOIN em nossa consulta:

  1. Na parte SELECT, listam-se as colunas desejadas de ambas as tabelas, incluindo o nome da tabela para maior clareza;
  2. Na parte JOIN, especifica-se a tabela a ser unida e a coluna comum que as conecta. Neste caso, são employees.department e department.name;
  3. Em seguida, os dados são agrupados por type para calcular o salário total utilizando a função SUM().

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
Nota

Ao contrário da cláusula UNION, a instrução JOIN permite combinar tabelas inteiras, não apenas as colunas que elas compartilham. Além disso, com JOIN, não há necessidade de subconsultas como ocorre com UNION.

Tarefa

Swipe to start coding

Você precisa juntar 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.name e a soma da coluna product.amount da tabela product.
  • Atribua o alias total_amount à segunda coluna.
  • Una a tabela category utilizando uma instrução JOIN.
  • 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

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 1
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Suggested prompts:

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?

close

bookJunção de 2 Tabelas

Deslize para mostrar o menu

Chamamos 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.

A segunda tabela contém as categorias de produtos no site, juntamente com uma breve descrição para cada categoria.

Nossa primeira tarefa é unir essas duas tabelas para descobrir quantos produtos existem em cada categoria. Utilizaremos uma instrução JOIN para isso.

Antes de iniciar 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.

Note
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. Isso informa ao SQL exatamente de qual tabela e coluna você está se referindo.

Aqui está a tarefa de recuperar o salário total dos funcionários em cada tipo de departamento (tech/non-tech).

A consulta para realizar essa tarefa será assim:

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Vamos analisar como utilizamos o JOIN em nossa consulta:

  1. Na parte SELECT, listam-se as colunas desejadas de ambas as tabelas, incluindo o nome da tabela para maior clareza;
  2. Na parte JOIN, especifica-se a tabela a ser unida e a coluna comum que as conecta. Neste caso, são employees.department e department.name;
  3. Em seguida, os dados são agrupados por type para calcular o salário total utilizando a função SUM().

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
Nota

Ao contrário da cláusula UNION, a instrução JOIN permite combinar tabelas inteiras, não apenas as colunas que elas compartilham. Além disso, com JOIN, não há necessidade de subconsultas como ocorre com UNION.

Tarefa

Swipe to start coding

Você precisa juntar 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.name e a soma da coluna product.amount da tabela product.
  • Atribua o alias total_amount à segunda coluna.
  • Una a tabela category utilizando uma instrução JOIN.
  • 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

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 1
single

single

some-alt