Comment utiliser les fonctions de classement dans les cte récursifs ? Voici un exemple simple qui montre ce que j'essaie de faire :
with cte as (
select 1 a, 1 b union all select 1, 2 union all select 2, 3 union all select 2, 4
)
, rcte (a, b, c, d) as (
select a, b, cast(0 as int), 1
from cte
union all
select a, b, cast(ROW\_NUMBER() over (partition by a order by b) as int), d+1
from rcte
where d < 2
)
select \*
from rcte
where d=2
order by a, b
Pourquoi il n'y a pas de classement ? Montrez-moi mon erreur svp