且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何检查 SQL 记录是否按特定顺序排列

更新时间:2023-01-28 20:28:33

With EXISTS:

With EXISTS:

select t.* from tablename t
where exists (
  select 1 from tablename
  where numcol > t.numcol and startdate > t.startdate
)

或者用 row_number() 窗口函数:

Or with row_number() window function:

select t.id, t.startdate, t.numcol
from (
  select *,
    row_number() over (order by startdate desc) rn1,
    row_number() over (order by numcol) rn2
  from tablename 
) t
where rn1 > rn2

请参阅演示.