⚡ CREATE INDEX no MySQL

Introdução

O comando CREATE INDEX é utilizado para criar índices em tabelas do banco de dados MySQL.

Um índice melhora o desempenho das consultas, permitindo que o banco encontre informações com maior rapidez.

📌 Índices funcionam como o índice de um livro: facilitam encontrar informações sem precisar pesquisar página por página.

O que é um Índice?

Um índice é uma estrutura criada pelo banco de dados para organizar referências aos dados armazenados em uma tabela.

Quando uma consulta utiliza uma coluna indexada, o MySQL consegue localizar registros de forma mais eficiente.

Objetivos dos Índices

Funcionamento de um Índice

Sem Índice Com Índice
Pesquisa registro por registro Busca diretamente pela referência
Maior tempo de consulta Maior velocidade
Mais processamento Menos processamento

Sintaxe Básica

CREATE INDEX nome_indice

ON nome_tabela
(nome_coluna);

Exemplo Inicial

Criando uma tabela de clientes:

CREATE TABLE clientes (

 id INT PRIMARY KEY,

 nome VARCHAR(100),

 email VARCHAR(150)

);

Criar Índice em uma Coluna

Criando um índice para pesquisa por nome:

CREATE INDEX idx_nome

ON clientes(nome);

Criar Índice em Mais de uma Coluna

Podemos criar índices compostos.

CREATE INDEX idx_nome_email

ON clientes(nome, email);

Esse índice utiliza duas colunas para melhorar pesquisas combinadas.

Índice UNIQUE

Um índice UNIQUE impede valores duplicados.

CREATE UNIQUE INDEX idx_email

ON clientes(email);

Criar Índice com ALTER TABLE

Outra forma de criar índices:

ALTER TABLE clientes

ADD INDEX idx_nome(nome);

Visualizar Índices Existentes

SHOW INDEX FROM clientes;

Exemplo de Consulta com Índice

SELECT *

FROM clientes

WHERE nome = 'Maria';

Se a coluna nome possuir índice, a busca poderá ser executada mais rapidamente.

Tipos de Índices

Tipo Descrição
PRIMARY KEY Índice principal da tabela
UNIQUE Impede valores duplicados
INDEX Melhora consultas
FULLTEXT Pesquisa em textos grandes

Quando Criar Índices?

Cuidados com Índices

Aplicações no Mundo Real

Sistema Uso de Índice
E-commerce Busca de produtos
Banco Consulta de clientes
Hospital Pesquisa de pacientes
Escola Consulta de alunos

Resumo da Aula

🎓 Aula concluída! Agora você entende como criar índices no MySQL para melhorar o desempenho das consultas.