SQL: fundamentos de JOIN
O curso mostra como JOINs em SQL combinam linhas de tabelas separadas por meio de chaves estrangeiras. Começa pela normalização e pelo contrato da chave estrangeira. Depois passa por INNER JOIN, LEFT JOIN, RIGHT JOIN e FULL OUTER JOIN, com o tratamento de NULL e o padrão anti-join. Em seguida trata de condições com várias colunas, JOINs encadeados, self-joins e non-equi joins. Também explica como o PostgreSQL escolhe entre nested loop, hash join e merge join, como ler o EXPLAIN ANALYZE e que SQL os métodos do ActiveRecord geram.
O que você vai aprender
- ✓Como normalização e chaves estrangeiras ligam tabelas
- ✓O comportamento de INNER, LEFT, RIGHT e FULL OUTER JOIN
- ✓O padrão anti-join e as armadilhas de NULL com ON, WHERE e COUNT
- ✓JOINs encadeados, chaves compostas, self-joins e non-equi joins
- ✓Leitura do EXPLAIN ANALYZE e indexação de colunas de chave estrangeira
- ✓Quando usar joins, left_joins, includes, eager_load e preload no ActiveRecord
O que é um JOIN?
Você administra uma pequena livraria online. Todo dia, clientes fazem pedidos. Seu software de contabilidade armazena duas listas separadas: uma para clientes (nome, email, telefone) e outra para pedidos (número do pedido, total, data). No final do mês, você precisa de um relatório mostrando cada…
Ler a aula completa grátis →Currículo
7 aulasO que é um JOIN?
Apresenta normalização, chaves estrangeiras, os três algoritmos de join, a sintaxe explícita e o produto cartesiano.
INNER JOIN: linhas correspondentes
Mostra como o INNER JOIN mantém só linhas correspondentes, multiplica linhas e usa aliases e DISTINCT.
LEFT JOIN: mantendo todas as linhas da esquerda
Trata do LEFT JOIN, do padrão anti-join e das armadilhas de NULL com WHERE, COUNT e COALESCE.
RIGHT JOIN e FULL OUTER JOIN
Explica o RIGHT JOIN como um LEFT JOIN invertido e o FULL OUTER JOIN para reconciliação e auditoria.
Condições de JOIN e múltiplos JOINs
Aprofunda a cláusula ON, chaves compostas, JOINs encadeados, ordem dos joins, self-joins e non-equi joins.
Performance de JOIN e planos de query
Ensina a ler o EXPLAIN ANALYZE, comparar algoritmos de join, indexar chaves estrangeiras e identificar o problema N+1.
JOINs no Rails: associações ActiveRecord
Compara joins, left_joins, includes, eager_load e preload, com o SQL que cada um gera e quando usar.