加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sqlserver分页

发布时间:2020-12-12 13:04:53 所属栏目:MsSql教程 来源:网络整理
导读:1、SELECT TOP (10) * FROM ( SELECT ?ROW_NUMBER() OVER (ORDER BY DataID desc) ?AS id,* FROM dbo.YJ_Expert ? ? ? ) as t WHERE t.id (10*(10000-1))? SELECT TOP ( pagesize ) * FROM ( SELECT ?ROW_NUMBER() OVER (ORDER BY 排序字段 desc) ?AS id,* F

1、SELECT TOP (10) * FROM ( SELECT ?ROW_NUMBER() OVER (ORDER BY DataID desc)

?AS id,* FROM dbo.YJ_Expert ? ? ? ) as t WHERE t.id > (10*(10000-1))?

SELECT TOP (pagesize) * FROM ( SELECT ?ROW_NUMBER() OVER (ORDER BY 排序字段 desc)

?AS id,* FROM dbo.YJ_Expert ? ? ? ) as t WHERE t.id > (pagesize*(page-1))?

备注:排序字段:最好是主键,如果是其他字段一定要加索引

2、当出现联合查询的时候

当主表数据很大的时候

? 10 分页结果 left join 其他从表 这样效率才高,

?select?*?from?(select?TOP?10?*?FROM(SELECT?ROW_NUMBER()?OVER(ORDER?BY?DESC)?AS?ROWID,y.*?FROM?y??)?AS?TEMP1?where?ROWID>0??)?po?LEFT?join?o?on?po.createUser=o.userid??where?1=1??and?o.orgid?in(XX)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读