Question générale sur utilisation des index
Bonsoir,
si je possède une table définie ainsi :
Code:
1 2
|
MaTable(GroupeId number(3), SousGroupeId number(3),ItemId number(1), LibelleItem Varchar2(100)) |
pour laquelle le champ :
- ItemId est unique par ligne
- SousGroupeId se retrouve n fois par GroupeId et est une FK d'une table de sous-groupements
- GroupeId étant une FK d'une table labellisant "mes groupements" et "regroupant mes sous-groupements"...
Si mes scripts interrogent presque toujours cette table des deux manières suivantes :
Code:
1 2
|
select ItemId,LibelleItem from MaTable where GroupeId =1 and SousGroupeId =1; |
ou :
Code:
select ItemId,LibelleItem from MaTable where SousGroupeId =2;
Je pense que je dois créer un index non unique sur le couple (GroupeId, SousGroupeId ) pour la requête 1. Mais pour la requête 2, dois-je aussi créer un second index non unique sur le champ SousGroupeId ? Ou le premier index créé sera quand même utilisé ? Peut-être que le second index sur SousGroupeId n'est-il utile que si je possède un grand nombre de sous-groupes ?
Lek.