sqlserver中怎么处理分页查询
发表于:2024-11-19 作者:千家信息网编辑
千家信息网最后更新 2024年11月19日,这篇文章将为大家详细讲解有关sqlserver中怎么处理分页查询,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。top方案:sql code:selec
千家信息网最后更新 2024年11月19日sqlserver中怎么处理分页查询
这篇文章将为大家详细讲解有关sqlserver中怎么处理分页查询,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
top方案:
sql code:
select top 10 * from table1where id not in(select top 开始的位置 id from table1)
max:
sql code:
select top 10 * from table1where id>(select max(id)from (select top 开始位置 id from table1 order by id)tt)
row:
sql code:
select *from (select row_number()over(order by tempcolumn)temprownumber,*from (select top 开始位置+10 tempcolumn=0,* from table1)t)ttwhere temprownumber>开始位置
3种分页方式,分别是max方案,top方案,row方案
效率:
第1:row
第2:max
第3:top
缺点:
max:必须用户编写复杂sql,不支持非唯一列排序
top:必须用户编写复杂sql,不支持复合主键
row:不支持sqlserver2000
测试数据:
共320万条数据,每页显示10条数据,分别测试了2万页、15万页和32万页。
页码,top方案,max方案,row方案
2万,60ms,46ms,33ms15万,453ms,343ms,310ms32万,953ms,720ms,686ms
是一种通过程序拼接sql语句的分页方案,
用户提过的sql语句不需要编写复杂的sql逻辑
诺用户提供sql如下
sql code
select * from table1
从第5条开始,查询5条,处理后sql变为
sql code
select *from (select row_number()over(order by tempcolumn)temprownumber,*from (select top 10 tempcolumn=0,* from table1)t)ttwhere temprownumber>5
这是什么意思呢?分解一下
首先将用户输入的sql语句转稍稍修改
在select后添加top 开始位置+条数变成
再外加一列tempcolum,变成这样
sql code
select top 20 tempcolumn=0,* from clazz
嵌套一层,这样便可查询出行号
刚才那个列就是用来这里order by用的
(也不知道sqlserver的row_number函数为什么必须要order by)
sql code
select row_number()over(order by tempcolumn)temprownumber,*from (修改过的查询)t
再套一层,过滤掉行号小于开始位置的行
sql code
select * from (第二层)ttwhere temprownumber>10
关于sqlserver中怎么处理分页查询就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
方案
位置
查询
用户
处理
复杂
数据
语句
支持
内容
文章
更多
知识
篇文章
测试
不错
万条
二层
函数
就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库语句查看端口
数据库如何清除表格内数据
福建通用软件开发服务价格
数据库的参照完整性怎么实现
泾县进口软件开发服务攻略
软件开发几个点税率
软件开发先进事迹范文
网络安全员喜欢用什么电脑
镇江软件开发公司挣钱吗
985网络安全研究生待遇
北京启航软件开发
济南分布式服务器咨询
ntp服务器 配置
数据库怎么查表里有多少条数据
安网络安全论文
辽宁省网络安全知识竞赛名单
我的世界服务器温馨提示
网络技术日语怎么说
广州所有软件开发微信开发
红帽服务器集群管理
停止数据库 还原数据库
长泰网络安全服务
做试衣软件开发者需要做的事
群晖数据库安全
美国网络安全公司发展史
林肯数据库
服务器cpu可以用在主板上吗
云问网络技术公司
dbd 数据库设计
江苏统一软件开发价格标准