如何比较表中的每一行和下面的一行

use*_*842 1 sql t-sql sql-server

我如何将一行中的值与下面的值进行比较..这对所有记录都是如此

EX.
Name      Age
Ahmed     20
Marko     22
jouhn     18
mira      30
joi       19
Run Code Online (Sandbox Code Playgroud)

所以我想要结果:

Ahmed < Marko
Marko > jouhn
Jouhn < Mira
Mira  > joi
Run Code Online (Sandbox Code Playgroud)

有谁可以帮我这个?

val*_*lex 5

SQLFiddle演示

with t1 as
(
  select t.*, 
   row_number() over (order by id) rn
  from t
 )

select t1.Name as Name1, 
       case when t1.Age>t2.Age 
          then '>'
            when t1.Age<t2.Age 
          then '<'
            else '='
       end as SIGN,
       t2.Name as Name2 
  from t1
  join t1 as t2 on t1.rn+1 = t2.id ;
Run Code Online (Sandbox Code Playgroud)