Comando INDEX

Informações do conceito

Indexar registros

Cria um índice para uma tabela do Analytics que permite acessar os registros em uma ordem sequencial em vez de na ordem física.

Sintaxe

INDEX {<ON> campo_chave <D> <...n>|<ON> ALL <EXCLUDE campo_chave <...n>>} TO nome_arquivo <IF teste> <WHILE teste> <FIRST intervalo|NEXT intervalo> <OPEN> <ISOLOCALE código_local>

Parâmetros

Nome Descrição
ON campo_chave D <...n> | ON ALL

O campo ou campos-chave, ou a expressão, que devem ser utilizados para a indexação.

Você pode indexar por qualquer tipo de campo, incluindo campos calculados e expressões ad hoc, independentemente do tipo de dados.

  • ON campo_chave use o campo ou os campos especificados

    Se você indexar por mais de um campo, criará uma indexação aninhada na tabela. A ordem do aninhamento seguirá a ordem em que os campos são especificados.

    Inclua D para indexar o campo-chave em ordem decrescente. A ordem de indexação padrão é crescente.

  • ON ALL usar todos os campos na tabela

    Se você indexar por todos os campos em uma tabela, criará uma indexação aninhada. A ordem do aninhamento seguirá a ordem em que os campos aparecem no layout da tabela.

    Uma ordem de indexação crescente é a única opção para ON ALL.

EXCLUDE nome_campo

opcional

Válido apenas ao indexar usando ON ALL.

O campo ou os campos a serem excluídos do comando. O EXCLUDE permite ajustar o ON ALL excluindo os campos especificados.

O EXCLUDE deve estar logo após do ON ALL. Por exemplo:

ON ALL EXCLUDE campo_1 campo_2
TO nome_arquivo

O nome do índice e o arquivo de índice associado. O arquivo de índice é criado com uma extensão .INX.

Nota

Na interface do usuário do Analytics, os nomes de índice são limitados a 64 caracteres alfanuméricos. O nome pode incluir o caractere de sublinhado ( _ ) mas nenhum outro caractere especial e nenhum espaço. O nome não pode começar com um número.

IF teste

opcional

Uma expressão condicional que deve ser verdadeira para processar cada registro. O comando é executado apenas nos registros que atendem à condição.

Nota

O parâmetro IF é avaliado apenas em relação aos registros restantes em uma tabela depois da aplicação dos parâmetros de escopo (WHILE, FIRST, NEXT).

WHILE teste

opcional

Uma expressão condicional que deve ser verdadeira para processar cada registro. O comando é executado até que a condição seja avaliada como falsa ou o fim da tabela seja alcançado.

Nota

Se você usar WHILE juntamente com FIRST ou NEXT, o processamento de registros será interrompido assim que um limite for alcançado.

FIRST intervalo | NEXT intervalo

opcional

O número de registros a ser processado:

  • FIRST iniciar o processamento a partir do primeiro registro até alcançar o número de registros especificado
  • NEXT iniciar o processamento a partir do registro selecionado no momento até alcançar o número de registros especificado

Use intervalo para especificar o número de registros a serem processados.

Se você omitir FIRST e NEXT, todos os registros serão processados por padrão.

OPEN

opcional

Abre a tabela e aplica o índice à tabela.

ISOLOCALE código_local

opcional

Nota

Aplicável apenas à edição Unicode do Analytics.

A localidade do sistema no formato idioma_país. Por exemplo, para usar francês canadense, insira fr_ca.

Use os códigos a seguir:

  • idioma código de idioma padrão ISO 639
  • país código de país padrão ISO 3166

    Se você não especificar um código de país, será usado o país padrão do idioma.

Se você não usar ISOLOCALE, a localidade do sistema padrão será usada.

Exemplos

Criar um índice e abrir a tabela

Na tabela Fornecedor, você cria um índice no campo Cidade_Fornecedor e abre a tabela:

OPEN Fornecedor
INDEX ON Cidade_Fornecedor TO "ÍndiceCidade" OPEN

Criar um índice e aplicá-lo à tabela

Na tabela Fornecedor, você cria um índice no campo Cidade_Fornecedor. Depois, você aplica o índice à tabela:

OPEN Fornecedor
INDEX ON Cidade_Fornecedor TO "ÍndiceCidade"
,
,
,
SET INDEX TO "ÍndiceCidade"

Observações

Para obter mais informações sobre o funcionamento desse comando, consulte Indexar registros.

A sequência de ordenação usada pelo comando INDEX

O comando INDEX usa a sequência de ordenação especificada na opção Critério de ordenação (Ferramentas > Opções > Tabelas). As sequências de ordenação padrão são mostradas abaixo.

Para obter informações detalhadas, consulte A opção Critério de Ordenação e as sequências de ordenação.

Edição do Analytics

Padrão do Critério de Ordenação

Sequência de ordenação associada

não unicode

Padrão do Sistema

(ASCII)

Números, maiúscula e minúscula:

0, 1, 2... A, B, C... a, b, c...

Por exemplo, ordenações de "Z" antes de "a".

Unicode

Combinar linguagens (UCA)

(Algoritmo de colação Unicode)

Números, minúsculas e maiúsculas combinadas:

0, 1, 2... a, A, b, B, c, C...

Por exemplo, ordenações de "a" antes de "Z".

Diferenciação de maiúsculas e minúsculas

INDEX diferencia maiúsculas e minúsculas. Dependendo da edição do Analytics que você está usando (não Unicode ou Unicode), o uso de maiúsculas e minúsculas em cadeias pode afetar a indexação.

Você pode usar a função UPPER( ) com INDEX se não quiser que o uso de maiúsculas e minúsculas afete a indexação:

INDEX ON UPPER(campo_chave) TO "Arquivo_índice"