CREATE [UNIQUE|FULLTEXT] INDEX nome_indice
       ON nome_tabela (index_col_name,...)
index_col_name:
       col_name [(length)] [ASC | DESC]
        A instrução CREATE INDEX não faz nada em
        versões do MySQL anterior a 3.22. Na versão 3.22 ou
        posteriores, CREATE INDEX é mapeado para uma
        instrução ALTER TABLE para criar índices.
        See Secção 6.5.4, “Sintaxe ALTER TABLE”.
      
        Normalmente você cria todos os índices em uma tabela ao mesmo
        tempo em que a própria tabela é criada com CREATE
        TABLE. See Secção 6.5.3, “Sintaxe CREATE TABLE”.
        CREATE INDEX lhe permite adicionar índices a
        tabelas existentes.
      
        Uma lista de colunas na forma (col1,col2,...)
        cria um índice com múltiplas colunas. Valores de índice são
        formados concatenando os valores de colunas dadas.
      
        Para colunas CHAR e
        VARCHAR, índices que utilizam apenas parte
        da coluna podem ser criados, usando a sintaxe
        nome_coluna(length) para indexar os primeiros
        length() bytes de cada valor da coluna. (Para
        colunas BLOB e TEXT, um
        prefixo length é exigido; length() pode ter
        um valor até 255 caracteres.) A instrução mostrada aqui cria
        um índice usando os primeiros 10 caracteres da coluna
        name:
      
mysql> CREATE INDEX part_of_name ON customer (name(10));
        Como a maioria dos nomes normalmente diferem nos primeiros 10
        caracteres, este índice não deve ser muito menor que um
        índice criado com toda a coluna name. Além
        disso, usar colunas parciais como índices pode fazer o arquivo
        de índice muito menor, o que pode economizar muito espaço em
        disco e pode também aumentar a velocidade de operações
        INSERT!
      
        Note que você pode adicionar um índice em uma coluna que pode
        ter valores apenas se você estiver usando o MySQL Versão
        3.23.2 ou mais novo e estiver usando os tipos de tabelas
        MyISAM, InnoDB, ou
        BDB. Você só pode adicionar um índice em
        uma coluna BLOB/ TEXT se
        você estiver usando o MySQL Versão 3.23.2 ou mais novo e
        estiver usando os tipos de tablea MyISAM ou
        BDB, ou MySQL Versão 4.0.14 ou mais novo e o
        tipo de tabela InnoDB. Para um índice em uma
        coluna BLOB/TEXT, o
        tamanho do prefixo sempre deve ser especificado.
      
        Uma especificação index_col_name pode
        finalizar com ASC ou DESC.
        Esta palavras chaves são permitidas para estensão futura para
        especificar o armazenamento do valor do índice em crescente ou
        decrescente. Atualmente elas são analisadas mas ignoradas;
        valores de índice são sempre armazenados em ordem crescente.
      
Para mais detalhes sobre como o MySQL utiliza índices, veja Secção 5.4.3, “Como o MySQL Utiliza Índices”.
        Indíces FULLTEXT só podem indexar colunas
        CHAR, VARCHAR e
        TEXT, e apenas em tabelas
        MyISAM. Índices FULLTEXT
        estão disponíveis no MySQL Versão 3.23.23 e posterior.
        Secção 6.8, “Pesquisa Full-text no MySQL”.
      
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

