电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

SQL Server 2005: 利用新的ranking函數實現高效的數據分頁操作

瀏覽:2日期:2023-10-30 18:49:08

最近MSDN Magazine上的一篇文章10 Tips for Writing High-Performance Web Applications提到了有效的數據分頁技術對提高ASP .NET程序性能的重要性;并給出了一個實現數據分頁的stored procedure的例子,抄錄如下:

CREATE PROCEDURE northwind_OrdersPaged

( @PageIndex int, @PageSize int)

ASBEGINDECLARE @PageLowerBound intDECLARE @PageUpperBound intDECLARE @RowsToReturn int-- First set the rowcountSET @RowsToReturn = @PageSize * (@PageIndex + 1)SET ROWCOUNT @RowsToReturn-- Set the page boundsSET @PageLowerBound = @PageSize * @PageIndexSET @PageUpperBound = @PageLowerBound + @PageSize + 1-- Create a temp table to store the select resultsCREATE TABLE #PageIndex ( IndexId int IDENTITY (1, 1) NOT NULL, OrderID int)-- Insert into the temp tableINSERT INTO #PageIndex (OrderID)SELECT OrderIDFROM OrdersORDER BY OrderID DESC-- Return total countSELECT COUNT(OrderID) FROM Orders-- Return paged resultsSELECT O.*FROM Orders O, #PageIndex PageIndexWHERE O.OrderID = PageIndex.OrderID AND PageIndex.IndexID > @PageLowerBound AND PageIndex.IndexID < @PageUpperBoundORDER BY PageIndex.IndexIDEND

在SQL Server 2000里面,由于沒有一個有效的進行ranking操作的方法,所以該例子先創建了一個有Identity字段的臨時表,利用Identity字段的自增長特性,間接的為Orders表的每一行按orderID逆序賦予了一個行號, 然后基于這個行號實現分頁。

在SQL Server 2000里面,由于系統提供了內建的ranking函數,為了給Orders表生成行號,我們不再需要利用Identity字段。

例如,利用SQL Server 2000的ROW_NUMBER()函數,按orderID字段逆序排列,給Orders表生成行號的語句如下:SELECT ROW_NUMBER() OVER(ORDER BY ordered DESC) AS rownum, ordered

FROM Orders

ORDER BY rownum DESC

基于這些新的ranking函數,您可以跟方便的實現數據的分頁操作。

關于SQL Server 2005的T-SQL新特性,見文檔:

http://msdn.microsoft.com/sql/archive/default.aspx?pull=/library/en-us/dnsql90/html/sql_05tsqlenhance.asp

標簽: Sql Server 數據庫
主站蜘蛛池模板: 广东恩亿梯电源有限公司【官网】_UPS不间断电源|EPS应急电源|模块化机房|电动汽车充电桩_UPS电源厂家(恩亿梯UPS电源,UPS不间断电源,不间断电源UPS) | 厌氧反应器,IC厌氧反应器,厌氧三相分离器-山东创博环保科技有限公司 | 西门子伺服电机维修,西门子电源模块维修,西门子驱动模块维修-上海渠利 | 吹塑加工_大型吹塑加工_滚塑代加工-莱力奇吹塑加工有限公司 | 全自动包装机_灌装机生产厂家-迈驰包装设备有限公司 | 防火阀、排烟防火阀、电动防火阀产品生产销售商-德州凯亿空调设备有限公司 | 中医治疗皮肤病_潍坊银康医院「山东」重症皮肤病救治平台 | 幂简集成 - 品种超全的API接口平台, 一站搜索、试用、集成国内外API接口 | 数码听觉统合训练系统-儿童感觉-早期言语评估与训练系统-北京鑫泰盛世科技发展有限公司 | 发电机价格|发电机组价格|柴油发电机价格|柴油发电机组价格网 | 岩棉切条机厂家_玻璃棉裁条机_水泥基保温板设备-廊坊鹏恒机械 | 气动机械手-搬运机械手-气动助力机械手-山东精瑞自动化设备有限公司 | 高压负荷开关-苏州雷尔沃电器有限公司 | 地图标注-手机导航电子地图如何标注-房地产商场地图标记【DiTuBiaoZhu.net】 | 安徽免检低氮锅炉_合肥燃油锅炉_安徽蒸汽发生器_合肥燃气锅炉-合肥扬诺锅炉有限公司 | 申江储气罐厂家,储气罐批发价格,储气罐规格-上海申江压力容器有限公司(厂) | 磁力抛光机_磁力研磨机_磁力去毛刺机-冠古设备厂家|维修|租赁【官网】 | 计算机毕业设计源码网| 空心明胶胶囊|植物胶囊|清真胶囊|浙江绿键胶囊有限公司欢迎您! | 重庆监控_电子围栏设备安装公司_门禁停车场管理系统-劲浪科技公司 | 螺钉式热电偶_便携式温度传感器_压簧式热电偶|无锡联泰仪表有限公司|首页 | 证券新闻,热播美式保罗1984第二部_腾讯1080p-仁爱影院 | 智慧食堂_食堂管理系统_食堂订餐_食堂消费系统—客易捷 | 双舌接地线-PC68数字式高阻计-ZC36|苏海百科 | 校服厂家,英伦校服定做工厂,园服生产定制厂商-东莞市艾咪天使校服 | 锥形螺带干燥机(新型耙式干燥机)百科-常州丰能干燥工程 | 济南铝方通-济南铝方通价格-济南方通厂家-山东鲁方通建材有限公司 | 换网器_自动换网器_液压换网器--郑州海科熔体泵有限公司 | 青岛空压机,青岛空压机维修/保养,青岛空压机销售/出租公司,青岛空压机厂家电话 | 浙江工业冷却塔-菱电冷却塔厂家 - 浙江菱电冷却设备有限公司 | 稳尚教育加盟-打造高考志愿填报平台_新高考志愿填报加盟_学业生涯规划加盟 | 岛津二手液相色谱仪,岛津10A液相,安捷伦二手液相,安捷伦1100液相-杭州森尼欧科学仪器有限公司 | 回转支承-转盘轴承-回转驱动生产厂家-洛阳隆达轴承有限公司 | 电机铸铝配件_汽车压铸铝合金件_发动机压铸件_青岛颖圣赫机械有限公司 | app开发|app开发公司|小程序开发|物联网开发||北京网站制作|--前潮网络 | 天津货架厂_穿梭车货架_重型仓储货架_阁楼货架定制-天津钢力仓储货架生产厂家_天津钢力智能仓储装备 | 阴离子聚丙烯酰胺价格_PAM_高分子聚丙烯酰胺厂家-河南泰航净水材料有限公司 | 档案密集架,移动密集架,手摇式密集架,吉林档案密集架-厂家直销★价格公道★质量保证 | 深圳装修_店面装修设计_餐厅设计_装修全包价格-尚泰装饰设计 | 耐破强度测试仪-纸箱破裂强度试验机-济南三泉中石单品站 | 四合院设计_四合院装修_四合院会所设计-四合院古建设计与建造中心1 |