Junção de tabelas ligadas por uma chave externa
Vamos juntar essas duas tabelas para analisar melhor os dados!
Talvez você já saiba como funcionam as uniões de SQL no curso Introdução a SQL para ciência de dados (último exercício) ou em Unindo dados no PostgreSQL.
Aqui vai uma revisão rápida de como geralmente funcionam as junções:
SELECT ...
FROM table_a
JOIN table_b
ON ...
WHERE ...
Embora as chaves externas e primárias não sejam imprescindíveis nas consultas de junção, elas ajudam muito, pois informam o que esperar. Por exemplo, você pode ter certeza de que os registros referenciados na tabela A sempre estarão presentes na tabela B - portanto, uma união da tabela A sempre encontrará algo na tabela B. Caso contrário, a restrição de chave estrangeira seria violada.
Este exercício faz parte do curso
Introdução aos Bancos de Dados Relacionais em SQL
Instruções de exercício
- Use
JOIN
para fazer a junção deprofessors
euniversities
comprofessors.university_id = universities.id
, ou seja, preserve todos os registros em que a chave externa deprofessors
seja igual à chave primária deuniversities
. - Filtre por
university_city = 'Zurich'
.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
-- Select all professors working for universities in the city of Zurich
SELECT professors.lastname, universities.id, universities.university_city
___ professors
___ ___
ON ___.university_id = universities.___
___ universities.university_city = ___;