Um
CTE
é basicamente uma visão descartável. Ele persiste apenas por uma única instrução e desaparece automaticamente. Suas opções incluem:
-
Redefina oCTE
uma segunda vez. Isso é tão simples quanto copiar e colar deWITH...
até o final da definição para antes de seuSET
.
-
Coloque seus resultados em um#temp
tabela ou uma@table
variável
-
Materialize os resultados em uma tabela real e faça referência a isso
-
Altere ligeiramente para apenasSELECT COUNT
do seu 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]