SQL server 海量数据库查询优化及分页算法.docxVIP

SQL server 海量数据库查询优化及分页算法.docx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL server 海量数据库查询优化及分页算法

SQL server 海量数据库查询优化及分页算法在以下的文章中,我将以“办公自动化”系统为例,探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页。以下代码说明了我们实例中数据库的“红头文件”一表的部分数据结构:   CREATE?TABLE?[dbo].[TGongwen]?(?--TGongwen是红头文件表名 [Gid]?[int]?IDENTITY?(1,?1)?NOT?NULL?,  --本表的id号,也是主键[title]?[varchar]?(80)?COLLATE?Chinese_PRC_CI_AS?NULL?,  --红头文件的标题[fariqi]?[datetime]?NULL?,  --发布日期 [neibuYonghu]?[varchar]?(70)?COLLATE?Chinese_PRC_CI_AS?NULL?,  --发布用户[reader]?[varchar]?(900)?COLLATE?Chinese_PRC_CI_AS?NULL?,  --需要浏览的用户。每个用户中间用分隔符“,”分开  ON?[PRIMARY]?TEXTIMAGE_ON?[PRIMARY] GO  下面,我们来往数据库中添加1000万条数据: declare?@i?int   set?@i=1   while?@i=250000   begin  insert into Tgongwen(fariqi,neibuyonghu,reader,title) values(2004-2-5,通信科,通信科,办公室,王局长,刘局长,张局长,admin,刑侦支队,特勤支队,交巡警支队,经侦支队, 户政科,治安支队,外事科,这是最先的25万条记录)set?@i=@i+1   end   GO   declare?@i?int   set?@i=1   while?@i=250000   begin  insert into Tgongwen(fariqi,neibuyonghu,reader,title) values(2004-9-16,办公室,办公室,通信科,王局长,刘局长,张局长,admin,刑侦支队,特勤支队,交巡警支队,经侦支 队,户政科,外事科,这是中间的25万条记录) set?@i=@i+1   end   GO   declare?@h?int   set?@h=1   while?@h=100   begin   declare?@i?int   set?@i=2002   while?@i=2003   begin   declare?@j?int   set?@j=0   while?@j50   begin   declare?@k?int   set?@k=0   while?@k50   begininsert into Tgongwen(fariqi,neibuyonghu,reader,title) values(cast(@i as varchar(4))+-8-15 3:+cast(@j as varchar(2))+:+cast(@j as varchar(2)),通信科,办公室,通信科,王局长,刘局长,张局长,admin,刑侦支队,特勤支队,交巡警支队,经侦支队,户政科,外事 科,这是最后的50万条记录) set?@k=@k+1   end   set?@j=@j+1   end   set?@i=@i+1   end   set?@h=@h+1   end   GO   declare?@i?int   set?@i=1   while?@i=9000000   begin  insert into Tgongwen(fariqi,neibuyonghu,reader,title) values(2004-5-5,通信科,通信科,办公室,王局长,刘局长,张局长,admin,刑侦支队,特勤支队,交巡警支队,经侦支队, 户政科,治安支队,外事科,这是最后添加的900万条记录)set?@i=@i+1000000   end   GO  通过以上语句,我们创建了25万条由通信科于2004年2月5日发布的记录,25万条由办公室于2004年9月6日发布的记录,2002年和 2003年各100个2500条相同日期、不同分秒的由通信科发布的记录(共50万条),还有由通信科于2004年5月5日发布的900万条记录,合计 1000万条。  一、因情制宜,建立“适当”的索引  建立“适当”的索引是实现查询优化的首要前提。  索引(index)是除表之外另一重要的、用户定义的存储在物理介质上的数据结构。当根据索引码的值搜索数据时,索引提供了对数据的快速访问。 事实上,没有索引

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档