En général, vous ne pouvez pas.
Il n'est valable que pour l'instruction suivante. Vous pouvez définir une vue avec la même définition si vous souhaitez réutiliser la définition pour plusieurs déclarations ou matérialisez-le vous-même dans une table/variable de table temporaire pour réutiliser les résultats .
Pour le cas spécifique de votre question, vous pouvez cependant tout faire en une seule déclaration.
WITH cte
AS (SELECT 1 AS n
UNION ALL
SELECT n + 1
FROM cte
WHERE n + 1 <= 10)
INSERT INTO tbl1
(id)
OUTPUT INSERTED.id
INTO tbl2(id)
SELECT n
FROM cte