Learning Hub Logo
SQL
  • Introdução ao SQL
  • Sintaxe SQL
  • SQL SELECT
  • SQL WHERE
  • SQL AND
  • SQL OR
  • SQL NOT
  • SQL ORDER BY
  • SQL INSERT INTO
  • SQL Valores NULL
  • SQL UPDATE
  • SQL DELETE
  • SQL LIMIT
  • SQL LIKE
  • SQL BETWEEN
  • SQL Aliases
  • SQL Funções de Agregação
  • SQL COUNT
  • SQL SUM
  • SQL AVG
  • SQL MIN e MAX
  • SQL GROUP BY
  • SQL HAVING
  • SQL Joins
  • SQL INNER JOIN
  • SQL LEFT JOIN
  • SQL RIGHT JOIN
  • SQL FULL OUTER JOIN
  • SQL Self Join
  • SQL UNION
  • Relacionamentos entre tabelas
  • SQL CREATE TABLE
  • SQL Constraints
  • SQL NOT NULL
  • SQL UNIQUE
  • SQL PRIMARY KEY
  • SQL FOREIGN KEY
  • SQL DEFAULT
  • SQL ALTER TABLE
  • SQL DROP TABLE
  • SQL Indexes
  • SQL Subconsultas
  • SQL Funções de String
  • SQL Funções de Data
  • SQL CASE WHEN
  • SQL Operadores e Funções Numéricas

Sobre Diego Pinho

Professor especialista em tecnologia com mais de 10 anos de experiência. Autor de livros técnicos e criador de cursos que já impactaram milhares de estudantes.

Visite meu site principal →

Serviços

  • Área do Aluno
  • Solicite um orçamento
  • Trabalhe Conosco

Redes Sociais

  • Youtube
  • TikTok
  • Instagram
  • LinkedIn

Links

  • Site Institucional
  • Nosso Blog
  • Cursos Online
  • Livros Publicados

Professor Diego Pinho

Educação, Tecnologia e IA © 2026

SQL›SQL Indexes

SQL Indexes

Como usar índices para acelerar consultas no banco de dados

⚡2 min de leitura

SQL Indexes

Um índice é uma estrutura de dados auxiliar que o banco cria para acelerar a busca de registros. Funciona como o índice de um livro. Ao invés de ler página por página, você vai direto ao que precisa.

Por que usar índices?

Sem índice, o banco precisa varrer a tabela inteira para encontrar os registros que atendem à condição do WHERE. Em tabelas grandes, isso é lento. Com um índice na coluna certa, a busca é muito mais rápida.

Criando um índice

Carregando...

Por convenção, o nome do índice começa com idx_ seguido do nome da tabela e da coluna.

Quando o índice é usado automaticamente

O banco decide sozinho quando usar o índice. Ele costuma ser aplicado quando:

Carregando...

Índice único

Além de acelerar as buscas, um índice único impede valores duplicados. Funciona de forma parecida com a constraint UNIQUE:

Carregando...

Verificando os índices existentes (PostgreSQL)

Carregando...

Removendo um índice

Carregando...

Cuidados com índices

Índices aceleram leituras, mas têm custo em escritas. Cada INSERT, UPDATE e DELETE precisa atualizar também os índices da tabela. Por isso:

  • Não indexe tudo indiscriminadamente;
  • Priorize colunas usadas frequentemente em WHERE, JOIN e ORDER BY;
  • Colunas com poucos valores distintos (como ativo = true/false) raramente se beneficiam de índice.

Primary Keys e colunas com UNIQUE já criam índices automaticamente, ou seja, você não precisa criá-los manualmente nesses casos.

← AnteriorSQL DROP TABLEPróximo →SQL Subconsultas