У меня есть таблица как под
Term
0
8
24
48
80
X
Желаемый результат:
Term1 Term2 Diff
0 8 8
8 24 16
24 48 24
48 80 32
80 x 40
У меня есть скрипт ниже
Declare @t Table(Term varchar(10))
Insert Into @t
Select '0' Union All
Select '8' Union All
Select '24' Union All
Select '48' Union All
Select '80' Union All
Select 'X'
Пока я пробовал как
;With Cte1 As
(
Select rn = ROW_NUMBER() Over(Order By (select 1)),* From @t
)
,cte2 as(
Select
Term1 = (Select term from Cte1 where rn=1)
,Term2 = (Select term from Cte1 where rn=2)
,Diff = Cast((Select term from Cte1 where rn=2) as int) - Cast((Select term from Cte1 where rn=1) as int)
)
Select * from cte2
Я не знаю, что делать в рекурсивной части cte2 ..
Требуется помощь