普通方式 分页【NOT IN】和【>】效率大PK 千万级别数据测试结果
2024-09-25 11:34:46
首现创建一张表,然后插入1000+万条数据,接下来进行测试。
use TT
go if exists (select * from sysobjects where name='Tonge') drop table Tonge create table Tonge( ID int primary key identity(1,1), NAME varchar(100), PWD varchar(100), PHONE varchar(100), BORNDATE date default getDate() ) go --存储过程插入10万条数据耗时:38s//平均 2600条/s
declare @i int set @i=0 while(@i<=100000) --插入测试数据10万条 begin insert into Tonge values('Tonge'+Convert(varchar(2),@i),'Tonge594200'+Convert(varchar(2),@i),'16886888688',default) set @i = @i+1 end go --疯狂插入法插万条插入640万条数据耗时:101s //平均 63000条/s insert into Tonge(NAME,PWD,PHONE,BORNDATE)( select NAME,PWD,PHONE,BORNDATE from Tonge ) --疯狂插入法7次 10*2*2*2*2*2*2*2=1284万条数据 go select MAX(ID) FROM Tonge
--DBCC SHRINKFILE(TTDB_log,0) --清除事务日志
--使用 Not In 分页
declare @PageSize int,@PageIndex int,@TotalPage int select @PageSize=1000,@PageIndex=1000 print '当前页数'+convert(varchar(5),@PageIndex)+' 总页数:' + Convert(varchar(5),@TotalPage) --等待6分钟未果、也就是3600s、CPU暴增... select top(@PageSize) * from Tonge where ID not in(select top(@PageSize*(@PageIndex-1)) ID from Tonge) order by ID --大于号分页测试
declare @PageSize int,@PageIndex int,@TotalPage int select @PageSize=1000,@PageIndex=1000 --每页显示1万条数据,显示第10页 --exec usp_Sign_PagedTonge @PageSize,@PageIndex,@TotalPage output print '当前页数'+convert(varchar(5),@PageIndex)+' 总页数:' + Convert(varchar(5),@TotalPage) --瞬间秒杀
select top(@PageSize) * from Tonge where id > (select max(id) from (select top (@PageSize*(@PageIndex-1)) id from Tonge order by id) emp) 测试结果:测试结果已经很明显了,那就是在普通分页中,对千万级别的数据进行分页(相同页码相同数据),大于号( > ) 甩Not In 几条街,另一篇我会介绍使用 存储过程分页 not in 和 > 号的区别 。 |
最新文章
- 辛巴学院-Unity-剑英陪你零基础学c#系列(二)顺序
- jquery触屏幻灯片
- win8安装SQL Server2008企业版
- java高薪之路__005_IO流
- 公司mysql数据库设计与优化培训ppt
- ESX虚拟机文件列表详解
- 关于SpingMVC实现文件下载你所不知道的
- vs2008 下编译jrtplib-3.9.0成功
- android动画效果编程基础--Android Animation
- Android的Activity切换动画特效库SwitchLayout,视图切换动画库,媲美IOS
- RSD和wlwmanifest是什么
- Gitblit配置
- addEventListener和attachEvent以及element.onclick的区别
- C++指向常量的指针和常指针
- IOS微信分享功能简单实现
- svn 删除svn项目命令
- H5+App开发框架汇总
- 《深入浅出NodeJS》mindmap
- 洛谷 P4841 城市规划 解题报告
- 【Python】唯品会购买商品
热门文章
- PHP定时执行任务/Cron Job
- 让Ecshop网店系统用户自动登陆
- iomanip,setw(),setw: undeclared identifier
- zhuan:ubuntu下安装Apache2+php+Mysql
- gulp前端自动化构建工具入门篇
- wampserver安装后的基本配置
- 干货CentOS6.5_Nginx1.40_Php5.57_MySQL5.5.35编译安装全记录
- Entity Framework 安装出现问题
- apache本地和局域网访问设置
- Nhibernate 多对多级联更新