CTE е основно изглед за еднократна употреба. Той се запазва само за едно изявление и след това автоматично изчезва.
Вашите опции включват:
-
Предефинирайте
CTEвтори път. Това е толкова просто, колкото копиране и поставяне отWITH...през края на дефиницията до преди вашияSET. -
Поставете резултатите си в
#tempтаблица или@tableпроменлива -
Материализирайте резултатите в реална таблица и препратете към нея
-
Променете леко само до
SELECT COUNTот вашия 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 example@sqldat.com