Bonjour,
Est-ce que placer des index sur des vues (qui sont très utilisées) améliore de façon notable les performances ?
Tout dépend de la requête contenue dans la vue.
Pour les vues avec aggrégation de données cela peut être utile par exemple.
J'aimerai essayer d'en placer mais il y a des agrégats de type MAX dans la sélection de la vue, ce qui visiblement empêche la possibilité de créer des index
La fonction MAX ne peut pas être utilisée dans une vue indexable.
Pour savoir si votre vue peut être indexable vous pouvez utiliser la fonction OBJECTPROPERTY de cette manière :
SELECT OBJECTPROPERTY(OBJECT_ID('<votre vue>'), 'IsIndexable');
Comme le précise Waldar, vous devez faire attention à la version utilisée pour cela. Seule version Entreprise de SQL Server permet de créer des vues indexées.
++
Partager