2 votes

cte récursif avec fonctions de classement

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X