J'ai un plan d'exécution pour une jointure assez complexe qui montre une recherche d'index effectuée sur une table avec la lecture "Nombre réel de lignes" ~ 70 000, alors qu'il n'y a en fait que 600 lignes environ dans le tableau (le nombre estimé de lignes n'est que de 127).Le plan d'exécution SQL affiche un "nombre réel de lignes" supérieur à la taille de la table
Notez que toutes les statistiques sont à jour et que les paramètres d'entrée de la requête sont exactement les mêmes que ceux qui ont été entrés lors de la compilation du proc.
Pourquoi le nombre réel de lignes est-il si élevé et que signifie réellement le nombre "nombre réel de lignes"? Ma seule théorie est qu'un nombre élevé de lignes est lié aux boucles imbriquées, et que cette recherche d'index est en cours d'exécution un certain nombre de fois - le "nombre réel de lignes" représente réellement le nombre total de lignes sur toutes les exécutions . Si tel est le cas, le nombre estimé de lignes signifie-t-il également le nombre total de lignes sur toutes les exécutions?
Je crois que vos hypothèses sont correctes – Avitus