SQL Avançado — Como Otimizar Queries com o Índice Certo Um analista de dados sênior não é quem sabe escrever queries complexas. É quem sabe aonde o banco está sofrendo. A diferença entre 45 segundos e 0.8 segundos? Um índice composto no lugar certo. Sem tocar em uma única linha de código. Capítulo 1: Por Que as Queries Ficam Lentas Quando você executa uma query, o banco de dados precisa: 1. Ler as linhas da tabela — se não houver índice, ele lê TODAS 2. Filtrar — verifica quais atendem aos critérios do WHERE 3. Ordenar — se tiver ORDER BY, ordena o resultado 4. Retornar — devolve o que você pediu Se a tabela tem 100 milhões de linhas, sem índice ele lê tudo. Com índice, ele pula direto para as linhas relevantes. Um query de 45 segundos significa: o banco está lendo muitas linhas desnecessariamente. Capítulo 2: Como Diagnosticar o Verdadeiro Problema Você não pode otimizar sem saber o porquê está lento. Usa : O EXPLAIN vai te mostrar: Seq Scan = lendo tudo (ruim) Index Scan = usando índice (bom) Rows = quantas linhas foram processadas Duration = tempo total Se for Seq Scan e o tempo for alto, você encontrou o culpado. Capítulo 3: Criando o Índice Composto Correto O índice composto deve seguir a ordem: 1. Colunas do WHERE (filtros) 2. Coluna do ORDER BY (ordenação) 3. Colunas extras (opcional, para covering index) Para a query anterior, o índice seria: Depois de criar, execute o EXPLAIN ANALYZE novamente. Você vai ver: Antes: Seq Scan em 45 segundos Depois: Index Scan em 0.8 segundos Redução de 98%. Dica Importante: Índices Compostos vs Simples Índice simples em status: ajuda, mas não o suficiente Índice simples em created_at: ajuda mais Índice composto em (status, created_at, last_purchase_date): resolve tudo A ordem importa. é diferente de . Capítulo 4: Evitando Armadilhas Comuns 1. Não criar um índice por coluna Índices custam espaço em disco e ralentam INSERTs. Priorize. 2. Não revisar índices velhos Se a query mudou, o índice pode estar obsoleto. Auditoria trimestral é essencial. 3. Confundir performance com complexidade Query mais curta ≠ mais rápida. Às vezes a query "burra" com o índice certo é a melhor solução. Capítulo 5: O Padrão que Separa Júnior de Sênior Todo analista sênior segue esse workflow: 1. Query lenta? Roda 2. Vê "Seq Scan"? Olha as colunas do WHERE + ORDER BY 3. Cria índice composto nessa ordem 4. Testa com EXPLAIN ANALYZE de novo 5. Se ainda for lento, repete o diagnóstico Não começa ajustando a query. Começa vendo o plano de execução. Isso é o que separa quem "arruma pelo achismo" de quem resolve com dados. Aplique Agora Se você tem uma query lenta na sua análise de dados, execute: Procure por "Seq Scan". Se achar, você sabe o que fazer. Dominar índices em SQL não é opcional em 2026 — é o que diferencia analista que demora 1 hora em uma análise do analista que entrega em 5 minutos. Quer dominar SQL avançado com projetos reais? Na Elite Data Academy, temos uma trilha completa de SQL Avançado com cases de e-commerce, SaaS e BI que usam exatamente essas técnicas. Certificado ao final. Planos a partir de R$ 35/mês.