Un CTE
est essentiellement une vue jetable. Il ne persiste que pour une seule instruction, puis disparaît automatiquement.
Vos options incluent :
-
Redéfinir le
CTE
une seconde fois. C'est aussi simple que de copier-coller depuisWITH...
jusqu'à la fin de la définition avant votreSET
. -
Mettez vos résultats dans un
#temp
table ou un@table
variables -
Matérialisez les résultats dans un vrai tableau et référencez-le
-
Modifiez légèrement pour juste
SELECT COUNT
depuis votre CTE :
.
SELECT @total = COUNT(*)
FROM Players p
INNER JOIN Teams t
ON p.IdTeam=t.Id
INNER JOIN Leagues l
ON l.Id=t.IdLeague
WHERE [email protected]