A partir da versão 2008 do SQL Server existe um recurso muito interessante para a criação de índices, a utilização de filtros selecionando somente uma parte dos registros da tabela.
Esta opção cria índices mais enxutos com menos custo de manutenção e principalmente mais agilidade na seleção dos dados porque tem que tratar menos informações.
Exemplos de utilização: em tabelas históricas onde as consultas serão realizadas principalmente nos dados mais recentes, ou desprezar registros que tenham nulos em uma determinada coluna.
Para utilizar esta opção, basta acrescentar a cláusula WHERE com a expressão da seleção dos registros que deverão compor o índice.
Exemplos:
Criando um índice somente com as notas de 2010
CREATE NONCLUSTERED INDEX IN_NOTAS2010
ON NOTASFISCAIS
WHERE DATANOTA BETWEEN '01-JAN-2010' AND '31-DEC-2010';
Criando um índice somente com os funcionários ativos (sem data de rescisão)
CREATE NONCLUSTERED INDEX IN_FUNCIONARIOSATIVOS
ON FUNCIONARIOS
WHERE DATARESCISAO IS NOT NULL;
Nenhum comentário:
Postar um comentário