Recorrer Analyze Actual Execution Plan
Analyze Actual Execution Plan revisa un plan real y señala patrones que SSMS reconoce en la ejecución observada. La herramienta ayuda a localizar un punto que merece investigación; no confirma por sí sola la causa ni decide qué cambio conviene aplicar.
Esta consulta reproduce el caso utilizado en las capturas:
DECLARE @Desde DATE = '2025-12-30';
SELECT
p.Estado,
COUNT_BIG(*) AS Pedidos,
SUM(p.Total) AS ImporteTotal,
AVG(p.Total) AS ImportePromedio
FROM dbo.PedidoLaboratorio AS p
WHERE p.FechaPedido >= @Desde
GROUP BY p.Estado
ORDER BY ImporteTotal DESC;
El análisis necesita un plan real
Activa Include Actual Execution Plan con Ctrl+M, ejecuta la consulta y abre Execution plan. Después haz clic derecho sobre el lienzo y elige Analyze Actual Execution Plan.
Un plan real conserva estimaciones y agrega mediciones de la ejecución, como las filas observadas. Esa comparación permite que SSMS busque escenarios donde lo previsto y lo ocurrido se separaron. El análisis no aparece como sustituto del plan: abre el panel Showplan Analysis y mantiene el plan como fuente de la evidencia.
La consulta reúne los pedidos recientes por estado, cuenta sus filas, calcula el importe total y el promedio, y ordena los grupos por importe. El plan combina Index Seek, Hash Match (Aggregate), Compute Scalar y Sort. En el acceso inicial, SQL Server estimó 30000 filas y observó 136. Esta es la misma diferencia estudiada al comparar filas estimadas y reales; ahora veremos cómo la presenta la herramienta dentro de un plan con más operaciones.
Multi Statement elige la instrucción que se analizará
- 1
Multi StatementReúne las instrucciones disponibles en el plan y permite elegir una sola para el análisis.
- 2Consulta seleccionada
El botón de opción identifica la instrucción activa. En un lote con varias consultas debemos confirmar el texto antes de interpretar los escenarios.
Un lote es el conjunto de instrucciones enviado conjuntamente a SQL Server. Aunque este plan contiene una sola consulta, SSMS conserva el paso de selección porque un plan puede reunir varias.
Cambiar la selección no ejecuta otra vez la consulta. Cambia qué instrucción del documento abierto examina el panel.
Scenarios agrupa los patrones encontrados
Después de elegir la instrucción, la pestaña Scenarios muestra las categorías de posibles problemas que SSMS reconoció para ella.
- 1Categoría encontrada
Inaccurate Cardinality Estimationindica que la estimación y la cantidad observada se separaron en un operador. - 2Hallazgo
La fila relaciona la diferencia con el
Index Seeky muestra `136` filas reales frente a `30000` estimadas. - 3Valor disponible al compilar
SSMS señala que el predicado depende de
@Desdey que el valor conocido durante la compilación pudo ser desconocido o distinto del utilizado al ejecutar. - 4Estadísticas
La segunda posibilidad pide comprobar si las estadísticas de la tabla son diferentes o están desactualizadas.
La columna Difference % muestra 21958. Ese porcentaje expresa la separación calculada por la herramienta; no es el costo del operador, una pérdida de rendimiento ni un umbral universal de gravedad.
El nodo identifica dónde observó SSMS la diferencia. No significa que el Index Seek sea defectuoso. El operador sigue siendo el punto donde se comparan las dos cantidades; la explicación puede depender del predicado, los parámetros, las estadísticas o la distribución de los datos.
Finding Details propone líneas de investigación
Una posible explicación indica dónde buscar evidencia adicional. No afirma que ambas condiciones existan ni que alguna sea la causa confirmada. En esta prueba, la presencia de una variable local hace pertinente revisar qué información tuvo el optimizador al estimar; la mención de estadísticas sigue siendo una hipótesis hasta comprobar sus fechas, modificaciones y distribución.
Los enlaces here abren documentación general del escenario. No analizan el historial de esta base ni validan una corrección específica para la consulta.
Conservar separadas la señal y la decisión
La lectura puede registrarse en tres partes:
- Observación: el
Index Seekestimó30000filas y produjo136en esta ejecución. - Hipótesis sugeridas: el valor disponible durante la compilación o las estadísticas podrían contribuir a la diferencia.
- Comprobación pendiente: medir el trabajo realizado y revisar cada hipótesis antes de modificar la consulta, las estadísticas o los índices.
Actualizar estadísticas, agregar OPTION (RECOMPILE) o cambiar el código solamente porque aparecen mencionados en una explicación convertiría una pista en una corrección automática. Cada alternativa tiene efectos y necesita una prueba propia.
Lo que la herramienta no garantiza
Analyze Actual Execution Plan trabaja con los escenarios que reconoce la versión instalada de SSMS. Que el panel no muestre un escenario no demuestra que el plan esté libre de problemas. Que muestre uno tampoco establece su impacto sobre CPU, lecturas, duración o concurrencia.
La herramienta analiza el documento abierto. No compara por sí sola ejecuciones históricas, parámetros representativos ni condiciones distintas de carga. Sus textos y categorías también pueden variar entre versiones de SSMS.
Qué podemos concluir
Podemos seleccionar la instrucción correcta, localizar el operador asociado al hallazgo y convertir las explicaciones de SSMS en preguntas concretas. Todavía no podemos elegir una corrección: primero necesitamos medir el trabajo y comprobar cuál hipótesis describe esta ejecución.
Siguiente comprobación razonable
La siguiente entrada utiliza SET STATISTICS IO para medir páginas leídas y conteos de exploración. Esa evidencia permitirá relacionar el escenario detectado con el trabajo que SQL Server realizó para resolver la consulta.
Relacionado con
- Filas estimadas y filas reales: interpreta la diferencia que aparece en este escenario.
- Acciones disponibles en el plan gráfico de SSMS: ubica el análisis entre las acciones del lienzo.
- Cómo se organiza el XML Showplan: localiza el nodo y sus métricas dentro del documento.
- Revisar estadísticas: reúne evidencia antes de aceptar una explicación relacionada con estadísticas.

