Aprenda
Início do módulo

SQL e banco de dados

Do SELECT básico a JOIN, agregação e índice — a base por trás de qualquer ORM.

16 lições271 min no total0% concluído
Começar trilha →

Fundamentos

O suficiente pra usar na prática sem se machucar.

8 lições · 130 min
  1. 1O que é um banco relacionalTabelas, linhas, colunas — e por que 'relacional' se refere às relações ENTRE tabelas, não dentro de uma só.12 min
  2. 2SELECT, WHERE, ORDER BYA consulta mais comum de todas: escolher colunas, filtrar linhas, definir a ordem.15 min
  3. 3JOIN — juntando tabelasComo buscar dado que está espalhado em duas tabelas relacionadas, numa consulta só.18 min
  4. 4Agregações: COUNT, GROUP BY, HAVINGTransformar várias linhas num resumo — "quantos pedidos por usuário", "faturamento por mês".16 min
  5. 5INSERT, UPDATE, DELETEOs três comandos que mudam dado — e por que UPDATE/DELETE sem WHERE é o erro mais caro do SQL.14 min
  6. 6Índices e performancePor que uma consulta fica lenta com 10 milhões de linhas — e o que um índice realmente faz.15 min
  7. 7Chaves primárias/estrangeiras e normalizaçãoO mecanismo que garante que uma referência entre tabelas nunca aponte pro vazio.16 min
  8. 8Projeto guiado: modelando e consultando um schema de e-commerce4 tabelas relacionadas, do CREATE TABLE a uma consulta de relatório com JOIN + agregação.24 min

Intermediário

O que fundamentos deixou em aberto — produção, performance, casos reais.

8 lições · 141 min
  1. 1Subqueries e CTEs (WITH)Uma consulta dentro de outra — e o WITH que existe pra você não precisar empilhar parênteses até perder a conta.16 min
  2. 2Window functions: ROW_NUMBER, RANK, LAG e LEADVocê quer o produto mais vendido de CADA categoria, mas ainda quer ver toda linha — GROUP BY não faz isso.17 min
  3. 3Transações e ACIDDois UPDATE que precisam acontecer juntos ou nenhum dos dois — o problema que uma transação existe pra resolver.15 min
  4. 4Constraints avançadas: enum vs. tabela de referência"Já validei isso no backend" não é o mesmo que o banco garantir que um dado inválido nunca entra.16 min
  5. 5Migrations seguras em produçãoO mesmo ALTER TABLE que roda instantâneo no seu banco de teste pode travar uma tabela real por minutos.17 min
  6. 6Modelagem de dados e multi-tenancy"Normalizar é sempre melhor" é meia-verdade — e servir vários clientes no mesmo banco levanta uma pergunta que normalização não responde.17 min
  7. 7EXPLAIN e otimização de queriesCriar o índice não é o fim da história — o planner pode decidir não usá-lo, e EXPLAIN ANALYZE é como você descobre por quê.17 min
  8. 8Projeto guiado: otimizando um schema com CTE, window function e transaçãoVoltando ao e-commerce da lição 8 — agora com relatório em janela, checkout atômico e um índice justificado por EXPLAIN.26 min