FirebirdSQL logo
 TABLEVIEW 

Indices partiels

Si vous pouvez spécifier une clause optionnelle WHERE lors de la création d’un index qui spécifie une condition de recherche,qui restreint le sous-ensemble des entrées de la table à indexer. De tels index sont appelés index partiels.La condition de recherche doit contenir une ou plusieurs colonnes du tableau.

La définition d’un index partiel peut inclure la spécification UNIQUE. Dans ce cas, chaque clé de l’index doit être unique. Cela garantit l’unicité pour un sous-ensemble de lignes de la table.

Un index partiel ne peut être utilisé que dans les cas suivants :

  • La condition WHERE comprend exactement la même expression logique que celle définie pour l’index ;

  • La condition de recherche définie pour l’index contient des expressions logiques combinées par OR, et l’une d’entre elles est explicitement incluse dans la condition WHERE ;

  • La condition de recherche définie pour l’index spécifie IS NOT NULL, et la condition WHERE inclut une expression pour le même champ qui est connue pour ignorer NULL.

Restrictions sur les indices

La longueur maximale de la clé d’indexation est limitée à 1/4 de la taille de la page.