7
votes

Conseils et astuces sur l'optimisation de la requête [SQL Server 2005]

Je pose cette question à Stackoverflow parce que c'est le bon endroit à demander ...

Je connais c'est un Très vaste sujet pour commencer mais quelques petits qui peuvent être vraiment utiles ...

Cela pourrait être utile pour les jeunes développeurs comme moi de connaître l'optimisation de la requête.

Certains astuces et astuces sur Optimisation de la requête dans SQL Server 2005 ..


0 commentaires

4 Réponses :


1
votes

L'endroit le plus évident pour démarrer si vous avez une requête lente consiste à vous assurer qu'il utilise un index.


1 commentaires

Dans Management Studio, exécutez la commande SET WORKPLAN_All sur puis exécutez votre requête. Ils interrogent ne seront pas exécutés, mais le plan d'exécution sera déversé. Regardez dans cette sortie pour le mot scan Ceci est là où un index n'est pas utilisé.



2
votes

basé sur des questions ici

  • Évitez la priorité de données (par exemple, beaucoup comme pour comme, y compris la longueur de Varchar, etc.)

    par exemple xxx

    • Évitez les fonctions sur les colonnes dans les clauses

      par exemple xxx

      • Index de couvre

      • GUID: Indices non clusters


0 commentaires

1
votes
  • Essayez de réduire votre nombre total de jointures si possible
  • Considérez les tailles de table utilisées dans la requête
  • Utilisez des index comme ils sont votre ami
  • Faites attention aux types que vous utilisez sous forme de touches (INT vers Int est une comparaison beaucoup plus facile que deux Varchars)
  • Évitez d'utiliser des requêtes «comme» dans la mesure du possible, essayez d'obtenir la valeur à l'aide d'une égalité d'abord

0 commentaires

1
votes

Pour les requêtes, je peux ajouter à GBN , récursif et smaclell les suivants:

  • Essayez de minimiser les sous-requêtes, rejoint
  • Évitez tout excès de verrouillage, épargnant les points de contrôle
  • Utilisez des pragmas pour définir la création de table Temp Table en mémoire
  • Utilisez des pragmas pour régler Synchrone Off
  • Utilisez des pragmes pour désactiver les déclencheurs (si possible)
  • incorporé insérer et Supprimer requêtes dans Transactions
  • Parfois Mise à jour est plus lente pour plusieurs enregistrements que de les insérer à nouveau. Donc recommandé est de sélectionner, de supprimer, que de mettre à jour par programme les enregistrements et de réinserrer les enregistrements avec les touches existantes (surveiller les cascade et déclencheurs )
  • Vérifiez auprès de vos administrateurs SYS que DB Cache doit être sur

0 commentaires