Sql三種分頁方法

2022-03-16 08:57:36 字數 639 閱讀 2464

--分頁三種方法

--第一種 row_number() over( order by orgid) as indexs 大於pagesize*pageindex,少於等於pagesize*(pageindex+1) --效率最高

select * from sys_user as a

left join

(select row_number() over( order by orgid) as indexs ,id from dbo.sys_user --效率 次之

) as b on a.id = b.id

where b.indexs > 0 and b.indexs <= 10

--第二種 not in + select

select top 10 * from dbo.sys_user

where id not in (select top 10 id from dbo.sys_user)

--第三種 借助游標內建方法,消耗記憶體,offset 跳過10條取接下來10條 --效率最差

select *

from sys_user

order by id

offset 10 rows

fetch next 10 rows only;

SQL分頁的三種方法

三種sql分頁法 表中主鍵必須為標識列,id int identity 1,1 1.分頁方案一 利用not in和select top分頁 語句形式 select top 10 from testtable where id not in select top 20 id from testtabl...

SQL分頁的三種方法

三種sql分頁法 表中主鍵必須為標識列,id int identity 1,1 1.分頁方案一 利用not in和select top分頁 語句形式 select top 10 from testtable where id not in select top 20 id from testtabl...

三種SQL分頁法

三種sql分頁法 表中主鍵必須為標識列,id int identity 1,1 1.分頁方案一 利用not in和select top分頁 語句形式 select top 10 from testtable where id not in select top 20 id from testtabl...