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
SQL Intermediário

bookJunção de 2 Tabelas

Conquistamos 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. Usaremos 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. Veja como o JOIN funciona utilizando 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 entende exatamente a 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:

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, listamos as colunas desejadas de ambas as tabelas, incluindo o nome da tabela para maior clareza;
  2. Na parte JOIN, especificamos a tabela a ser unida e a coluna em comum que as conecta. Neste caso, são employees.department e department.name;
  3. Em seguida, agrupamos os dados por type para calcular o salário total utilizando a função SUM().

Se isso parecer complexo, aqui está uma sintaxe simples para utilizar o JOIN:

SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column

Nota

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

Tarefa

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

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?

close

Awesome!

Completion rate improved to 4

bookJunção de 2 Tabelas

Deslize para mostrar o menu

Conquistamos 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. Usaremos 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. Veja como o JOIN funciona utilizando 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 entende exatamente a 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:

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, listamos as colunas desejadas de ambas as tabelas, incluindo o nome da tabela para maior clareza;
  2. Na parte JOIN, especificamos a tabela a ser unida e a coluna em comum que as conecta. Neste caso, são employees.department e department.name;
  3. Em seguida, agrupamos os dados por type para calcular o salário total utilizando a função SUM().

Se isso parecer complexo, aqui está uma sintaxe simples para utilizar o JOIN:

SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column

Nota

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

Tarefa

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

close

Awesome!

Completion rate improved to 4
Seção 3. Capítulo 1
single

single

some-alt