Gjort korrekt, det bör inte göra någon skillnad, optimizeren är smart nog att återanvända uttryck.
Men din CTE ska inte arbete ditåt - den stilla behov gruppen by i CTEN sig själv och du har inte nått något.
Det ad hoc- beskådar skulle looknågot liknande detta:
välj summan (ColA), summan (ColB), MyVar från
(VALD ColA, ColB,
CASE @MyVar
NÄR 1 DÄREFTER ”XXX”,
NÄR 2 DÄREFTER ”XXX”,
NÄR 3 DÄREFTER ”XXX”,
NÄR 4 DÄREFTER ”XXX”,
AVSLUTA MyVar
FRÅN MyTable) v
grupp av MyVar
CTEN är samma.