Da hipótese à validação: metodologia, métricas, reescritas e automação de análise.
SET STATISTICS IO, TIME ON;
-- Capture 3 execuções e use medianas (compilações podem enviesar)
-- Anti-OR em colunas diferentes → UNION ALL
SELECT ... WHERE A=1
UNION ALL
SELECT ... WHERE B=1; -- melhor cardinalidade por ramo
-- TOP com APPLY para pegar “N por grupo”
SELECT * FROM T AS o
CROSS APPLY (
SELECT TOP (3) * FROM T AS i WHERE i.Grupo=o.Grupo ORDER BY i.Data DESC
) as ult;
-- Marque regressões e force plano “bom” enquanto corrige a causa
EXEC sp_query_store_force_plan @query_id=101, @plan_id=204;
-- Partir de consulta lenta real, medir, reescrever e validar.
OPTION (RECOMPILE) vs OPTIMIZE FOR UNKNOWN: comparar tempos.