Publié le :
SQL CREATION_INTERNE

Création d'un index

Ce code est également disponible en : Deutsch English Español
En attente de validation
Ce document explique comment créer et supprimer des index dans SAS© PROC SQL. Il couvre la création d'index simples (sur une seule colonne) et d'index composites (sur plusieurs colonnes), ainsi que l'utilisation du mot-clé UNIQUE pour garantir l'unicité des valeurs indexées. Des conseils sont fournis pour une création d'index efficace, notamment la minimisation du nombre d'index et leur utilisation pour des requêtes ciblant de petits sous-ensembles de données. Les limites et les considérations de performance sont également abordées.
Analyse des données

Type : CREATION_INTERNE


Les exemples utilisent des tables créées via 'CREATE TABLE ... LIKE' à partir d'une table existante (COUNTRIES), supposée être disponible ou créée en interne pour les besoins de l'exemple.

1 Bloc de code
PROC SQL Data
Explication :
Cet exemple crée d'abord une nouvelle table nommée `newcountries` en utilisant la structure de la table `countries`. Ensuite, il crée un index simple nommé `area` sur la colonne `area` de la table `newcountries`. Un index simple est appliqué à une seule colonne, et son nom doit être identique à celui de la colonne indexée.
Copié !
1PROC SQL;
2 create TABLE newcountries
3 like countries;
4 create index area
5 on newcountries(area);
6QUIT;
2 Bloc de code
PROC SQL
Explication :
Cet exemple crée un index composite nommé `places` sur les colonnes `name` et `continent` de la table `newcountries`. Un index composite s'applique à deux colonnes ou plus. Le nom de l'index composite ne peut pas être le même que le nom de l'une des colonnes de la table.
Copié !
1PROC SQL;
2 create index places
3 on newcountries(name, continent);
4QUIT;
3 Bloc de code
PROC SQL
Explication :
Cet exemple recrée la table `newcountries` (si elle n'existe pas) puis crée un index composite unique nommé `places` sur les colonnes `name` et `continent`. L'utilisation du mot-clé `UNIQUE` garantit que chaque combinaison de valeurs dans les colonnes `name` et `continent` de la table est unique. Toute tentative de modifier la table d'une manière qui entraînerait des valeurs d'index non uniques sera rejetée par SAS.
Copié !
1PROC SQL;
2 create TABLE newcountries
3 like countries;
4 create unique index places
5 on newcountries(name, continent);
6QUIT;
4 Bloc de code
PROC SQL
Explication :
Cet exemple supprime l'index nommé `places` de la table `newcountries` en utilisant l'instruction `DROP INDEX`. Cela est utile pour libérer de l'espace disque ou pour ajuster les stratégies d'indexation afin d'améliorer les performances.
Copié !
1 
2PROC SQL;
3drop index places from newcountries;
4QUIT;
5 
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Informations de Copyright : Copyright © SAS Institute Inc. All Rights Reserved


Banner
Le Conseil de l'Expert
Expert
Michael
Responsable de l'infrastructure Viya.
« vant de créer un index composite, vérifiez l'ordre des variables. Placez en premier dans l'index la variable la plus discriminante (celle qui a le plus de valeurs distinctes). Cela permet à SAS d'éliminer plus rapidement les lignes non pertinentes lors de la recherche »