Plan de requête estimé par rapport à des appels de fonction réels
-
31-10-2019 - |
Question
J'ai cette requête sur SQL Server, une requête de réplication de fusion:
SELECT DISTINCT
b.tablenick,
b.rowguid,
c.generation,
sys.fn_MSgeneration_downloadonly
(
c.generation,
c.tablenick
)
FROM #belong b
LEFT OUTER JOIN dbo.MSmerge_contents c ON
c.tablenick = b.tablenick
AND c.rowguid = b.rowguid;
Le plan de requête estimé comprend des informations sur 3 requêtes:
- La requête ci-dessus
- L'appel de fonction à fn_msgener_downloadonly
- L'appel de fonction à fn_msarticle_has_downloadonly_property
Le plan de requête réel comprend uniquement ces informations:
- La requête ci-dessus
Rien sur les fonctions. Pourquoi les informations de fonction manquent-elles dans le plan réel?
J'ai essayé ces options:
SET STATISTICS PROFILE ON
SET STATISTICS XML ON
Ce qui a créé un plan réel, mais il manquait les parties 2 et 3 de même que lorsque j'ai utilisé l'option de plan de requête réelle dans Management Studio.
Si, par exemple, je devais utiliser Profiler pour capturer les informations sur la fonction appelle quels événements serais-je sélectionné?
Je n'ai pas trouvé de réponse spécifiquement liée aux plans de requête, mais j'ai profilé SP: STMTSTARTING ET SP: STMTCOMPLETED et il a montré les appels de fonction.
Pas de solution correcte