Voici quelques astuces qui peuvent aider à optimiser vos requêtes sql.
1- Parmi les colonnes se trouvant dans la clause SELECT ne doivent êtres présentent uniquement les colonnes nécessaires. chaque colonnes de la requête nécessite des opérations I/O et de la bande passante.
2 – L’utilisation du SELECT * FROM … est très fortement déconseillé.
2- Seule les lignes nécessaires doivent être retournées. Ne pas faire retourner 10000 lignes par l’application alors que l’on a besoins de voir uniquement les 10 ères. (exemple d’un datagrid paginé).
La fonction ROWNUMBER permet de faire de la pagination en tsql.
Plus d’infos sur cette fonction ici: http://msdn.microsoft.com/fr-fr/library/ms186734.aspx
3- Ne pas utiliser le DISTINCT ou UNION si l’unicité n’est pas nécessaire.
4- Dans le cas d’utilisation d’un CURSEUR, pensez à le fermer et le désalouer le plus tôt possible.
5- L’utilisation des Procédures stockés est recommandée, surtout si le temps d’exécution d’une requête n’est pas prédit.
Les procédures stockés ont l’avantage d’avoir un temps d’execution fiable, car leur exécution ne demandent pas de recompilation.
Plus d’infos ici: http://www.codeproject.com/Articles/414272/Stored-Procedures-DO-NOT-increase-performance


