mgm6608美高梅app下载-mgm集团美高梅登录

mgm6608美高梅app下载以独家报道、社区、博客和专题策划等方式引领产业潮流,mgm集团美高梅登录为足球爱好者以及体育爱好者提供足球上网,让你无后顾之忧!,拥有多位香港乐坛红星。

-- 需要返回的列,每页10条记录按升序和降序第一

日期:2020-04-09编辑作者:mgm集团美高梅登录

注:需要建立索引复制代码 代码如下:/* 经测试,在14483461条记录中查询第100000页,每页10条记录按升序和降序第一次时间均为0.47秒,第二次时间均为0.43秒,测试语法如下: execGetRecordFromPagenews,newsid,10,100000 news为表名,newsid为关键字段,使用时请先对newsid建立索引。 */ /* 函数名称:GetRecordFromPage 函数功能:获取指定页的数据 参数说明:@tblName包含数据的表名 @fldName关键字段名 @PageSize每页记录数 @PageIndex要获取的页码 @OrderType排序类型,0-升序,1-降序 @strWhere查询条件(注意:不要加where) 作 者:铁拳 邮 箱:unjianhua_kki@sina.com"sunjianhua_kki@sina.com 创建时间:2004-07-04 修改时间:2004-07-04 */ CreatePROCEDUREGetRecordFromPage @tblNamevarchar(255),--表名 @fldNamevarchar(255),--字段名 @PageSizeint=10,--页尺寸 @PageIndexint=1,--页码 @OrderTypebit=0,--设置排序类型,非0值则降序 @strWherevarchar(2000)=''--查询条件(注意:不要加where) AS declare@strSQLvarchar(6000)--主语句 declare@strTmpvarchar(1000)--临时变量 declare@strOrdervarchar(500)--排序类型 if@OrderType!=0 begin set@strTmp="(selectmin" set@strOrder="orderby["+@fldName+"]desc" end else begin set@strTmp="(selectmax" set@strOrder="orderby["+@fldName+"]asc" end set@strSQL="selecttop"+str(@PageSize)+"*from[" +@tblName+"]where["+@fldName+"]"+@strTmp+"([" +@fldName+"])from(selecttop"+str((@PageIndex-1)*@PageSize)+"[" +@fldName+"]from["+@tblName+"]"+@strOrder+")astblTmp)" +@strOrder if@strWhere!='' set@strSQL="selecttop"+str(@PageSize)+"*from[" +@tblName+"]where["+@fldName+"]"+@strTmp+"([" +@fldName+"])from(selecttop"+str((@PageIndex-1)*@PageSize)+"[" +@fldName+"]from["+@tblName+"]where"+@strWhere+"" +@strOrder+")astblTmp)and"+@strWhere+""+@strOrder if@PageIndex=1 begin set@strTmp="" if@strWhere!='' set@strTmp="where("+@strWhere+")" set@strSQL="selecttop"+str(@PageSize)+"*from[" +@tblName+"]"+@strTmp+""+@strOrder end exec(@strSQL) GO

原帖子如下:

-- 获取指定页的数据
CREATE PROCEDURE pagination
@tblName varchar(255), -- 表名
@strGetFields varchar(1000) = '*', -- 需要返回的列
@fldName varchar(255)='', -- 排序的字段名
@PageSize int = 10, -- 页尺寸
@PageIndex int = 1, -- 页码
@doCount bit = 0, -- 返回记录总数, 非 0 值则返回
@OrderType bit = 0, -- 设置排序类型, 非 0 值则降序
@strWhere varchar(1500) = '' -- 查询条件 (注意: 不要加 where)
AS

mgm集团美高梅登录 1mgm集团美高梅登录 2/**//*
mgm集团美高梅登录 3 名称:spAll_DeleteNoneUnique
mgm集团美高梅登录 4 输入:要查询的表名和字段列表
mgm集团美高梅登录 5 输出:
mgm集团美高梅登录 6mgm集团美高梅登录, 调用:
mgm集团美高梅登录 7 说明:实现千万级数据的分页显示!--可以在5秒内获取1448万条记录里的第1200页的100条记录,雄不?
mgm集团美高梅登录 8 作者:铁拳
mgm集团美高梅登录 9 邮件:
mgm集团美高梅登录 10 网站:
mgm集团美高梅登录 11 更新:20040610
mgm集团美高梅登录 12 支持:
mgm集团美高梅登录 13 版权:转述时请注明来源:用思维创造未来的Wellknow.net
mgm集团美高梅登录 14*/
mgm集团美高梅登录 15
mgm集团美高梅登录 16CREATE PROCEDURE GetRecordFromPage
mgm集团美高梅登录 17    @tblName      varchar(255),       -- 表名
mgm集团美高梅登录 18    @fldName      varchar(255),       -- 字段名
mgm集团美高梅登录 19    @PageSize     int = 10,           -- 页尺寸
mgm集团美高梅登录 20    @PageIndex    int = 1,            -- 页码
mgm集团美高梅登录 21    @IsCount      bit = 0,            -- 返回记录总数, 非 0 值则返回
mgm集团美高梅登录 22    @OrderType    bit = 0,            -- 设置排序类型, 非 0 值则降序
mgm集团美高梅登录 23    @strWhere     varchar(1000) = ''  -- 查询条件 (注意: 不要加 where)
mgm集团美高梅登录 24AS
mgm集团美高梅登录 25
mgm集团美高梅登录 26declare @strSQL   varchar(6000)       -- 主语句
mgm集团美高梅登录 27declare @strTmp   varchar(100)        -- 临时变量
mgm集团美高梅登录 28declare @strOrder varchar(400)        -- 排序类型
mgm集团美高梅登录 29
mgm集团美高梅登录 30if @OrderType != 0
mgm集团美高梅登录 31begin
mgm集团美高梅登录 32    set @strTmp = "<(select min"
mgm集团美高梅登录 33    set @strOrder = " order by [" + @fldName +"] desc"
mgm集团美高梅登录 34end
mgm集团美高梅登录 35else
mgm集团美高梅登录 36begin
mgm集团美高梅登录 37    set @strTmp = ">(select max"
mgm集团美高梅登录 38    set @strOrder = " order by [" + @fldName +"] asc"
mgm集团美高梅登录 39end
mgm集团美高梅登录 40
mgm集团美高梅登录 41set @strSQL = "select top " + str(@PageSize) + " * from ["
mgm集团美高梅登录 42    + @tblName + "] where [" + @fldName + "]" + @strTmp + "(["
mgm集团美高梅登录 43    + @fldName + "]) from (select top " + str((@PageIndex-1)*@PageSize) + " ["
mgm集团美高梅登录 44    + @fldName + "] from [" + @tblName + "]" + @strOrder + ") as tblTmp)"
mgm集团美高梅登录 45    + @strOrder
mgm集团美高梅登录 46
mgm集团美高梅登录 47if @strWhere != ''
mgm集团美高梅登录 48    set @strSQL = "select top " + str(@PageSize) + " * from ["
mgm集团美高梅登录 49        + @tblName + "] where [" + @fldName + "]" + @strTmp + "(["
mgm集团美高梅登录 50        + @fldName + "]) from (select top " + str((@PageIndex-1)*@PageSize) + " ["
mgm集团美高梅登录 51        + @fldName + "] from [" + @tblName + "] where " + @strWhere + " "
mgm集团美高梅登录 52        + @strOrder + ") as tblTmp) and " + @strWhere + " " + @strOrder
mgm集团美高梅登录 53
mgm集团美高梅登录 54if @PageIndex = 1
mgm集团美高梅登录 55begin
mgm集团美高梅登录 56    set @strTmp = ""
mgm集团美高梅登录 57    if @strWhere != ''
mgm集团美高梅登录 58        set @strTmp = " where " + @strWhere
mgm集团美高梅登录 59
mgm集团美高梅登录 60    set @strSQL = "select top " + str(@PageSize) + " * from ["
mgm集团美高梅登录 61        + @tblName + "]" + @strTmp + " " + @strOrder
mgm集团美高梅登录 62end
mgm集团美高梅登录 63
mgm集团美高梅登录 64if @IsCount != 0
mgm集团美高梅登录 65    set @strSQL = "select count(*) as Total from [" + @tblName + "]"
mgm集团美高梅登录 66
mgm集团美高梅登录 67exec (@strSQL)
mgm集团美高梅登录 68
mgm集团美高梅登录 69GO
mgm集团美高梅登录 70
mgm集团美高梅登录 71

declare @strSQL varchar(5000) -- 主语句
declare @strTmp varchar(110) -- 临时变量
declare @strOrder varchar(400) -- 排序类型
if @doCount != 0
begin
if @strWhere !=''
set @strSQL = "select count(*) as Total from [" + @tblName + "] where "+@strWhere
else
set @strSQL = "select count(*) as Total from [" + @tblName + "]"
end
--以上代码的意思是如果@doCount传递过来的不是0,就执行总数统计。以下的所有代码都是@doCount为0的情况

修改后,便于使用的代码:

else
begin
if @OrderType != 0
begin
set @strTmp = "<(select min"
set @strOrder = " order by [" + @fldName +"] desc"
--如果@OrderType不是0,就执行降序,这句很重要!
end

mgm集团美高梅登录 72修改一点点便于其他人使用 
mgm集团美高梅登录 73CREATE PROCEDURE GetRecordFromPage 
mgm集团美高梅登录 74@tblName varchar(255), -- 表名 
mgm集团美高梅登录 75@fldName varchar(255), -- 字段名 
mgm集团美高梅登录 76@OrderfldName varchar(255), -- 排序字段名 
mgm集团美高梅登录 77@StatfldName varchar(255), -- 统计字段名 
mgm集团美高梅登录 78@PageSize int = 10, -- 页尺寸 
mgm集团美高梅登录 79@PageIndex int = 1, -- 页码 
mgm集团美高梅登录 80@IsCount bit = 0, -- 返回记录总数, 非 0 值则返回 
mgm集团美高梅登录 81@OrderType bit = 0, -- 设置排序类型, 非 0 值则降序 
mgm集团美高梅登录 82@strWhere varchar(1000) = '' -- 查询条件 (注意: 不要加 where) 
mgm集团美高梅登录 83AS 
mgm集团美高梅登录 84
mgm集团美高梅登录 85declare @strSQL varchar(6000) -- 主语句 
mgm集团美高梅登录 86declare @strTmp varchar(100) -- 临时变量 
mgm集团美高梅登录 87declare @strOrder varchar(400) -- 排序类型 
mgm集团美高梅登录 88
mgm集团美高梅登录 89if @OrderType != 0 
mgm集团美高梅登录 90begin 
mgm集团美高梅登录 91set @strTmp = "<(select min" 
mgm集团美高梅登录 92set @strOrder = " order by [" + @OrderfldName +"] desc" 
mgm集团美高梅登录 93end 
mgm集团美高梅登录 94else 
mgm集团美高梅登录 95begin 
mgm集团美高梅登录 96set @strTmp = ">(select max" 
mgm集团美高梅登录 97set @strOrder = " order by [" + @OrderfldName +"] asc" 
mgm集团美高梅登录 98end 
mgm集团美高梅登录 99
mgm集团美高梅登录 100set @strSQL = "select top " + str(@PageSize) + " " + @fldName + " from [" 
mgm集团美高梅登录 101+ @tblName + "] where [" + @OrderfldName + "]" + @strTmp + "([" 
mgm集团美高梅登录 102+ @OrderfldName + "]) from (select top " + str((@PageIndex-1)*@PageSize) + " [" 
mgm集团美高梅登录 103+ @OrderfldName + "] from [" + @tblName + "]" + @strOrder + ") as tblTmp)" 
mgm集团美高梅登录 104+ @strOrder 
mgm集团美高梅登录 105
mgm集团美高梅登录 106if @strWhere != '' 
mgm集团美高梅登录 107set @strSQL = "select top " + str(@PageSize) + " " + @fldName + " from [" 
mgm集团美高梅登录 108+ @tblName + "] where [" + @OrderfldName + "]" + @strTmp + "([" 
mgm集团美高梅登录 109+ @OrderfldName + "]) from (select top " + str((@PageIndex-1)*@PageSize) + " [" 
mgm集团美高梅登录 110+ @OrderfldName + "] from [" + @tblName + "] where " + @strWhere + " " 
mgm集团美高梅登录 111+ @strOrder + ") as tblTmp) and " + @strWhere + " " + @strOrder 
mgm集团美高梅登录 112
mgm集团美高梅登录 113if @PageIndex = 1 
mgm集团美高梅登录 114begin 
mgm集团美高梅登录 115set @strTmp = "" 
mgm集团美高梅登录 116if @strWhere != '' 
mgm集团美高梅登录 117set @strTmp = " where " + @strWhere 
mgm集团美高梅登录 118
mgm集团美高梅登录 119set @strSQL = "select top " + str(@PageSize) + " " + @fldName + " from [" 
mgm集团美高梅登录 120+ @tblName + "]" + @strTmp + " " + @strOrder 
mgm集团美高梅登录 121end 
mgm集团美高梅登录 122
mgm集团美高梅登录 123if @IsCount != 0 
mgm集团美高梅登录 124set @strSQL = "select count(" + @StatfldName + ") as Total from [" + @tblName + "]" 
mgm集团美高梅登录 125
mgm集团美高梅登录 126exec (@strSQL) 
mgm集团美高梅登录 127
mgm集团美高梅登录 128GO 
mgm集团美高梅登录 129

else
begin
set @strTmp = ">(select max"
set @strOrder = " order by [" + @fldName +"] asc"
end
if @PageIndex = 1
begin
if @strWhere != ''
set @strSQL = "select top " + str(@PageSize) +" "+@strGetFields+ " from [" + @tblName + "] where " + @strWhere + " " + @strOrder
else
set @strSQL = "select top " + str(@PageSize) +" "+@strGetFields+ " from ["+ @tblName + "] "+ @strOrder
--如果是第一页就执行以上代码,这样会加快执行速度
end

本文由mgm6608美高梅app下载发布于mgm集团美高梅登录,转载请注明出处:-- 需要返回的列,每页10条记录按升序和降序第一

关键词:

2、然后点上面菜单中的工具--选择数据库维护计

通过企业管理器设置数据库的定期自动备份计划。1、打开企业管理器,双击打开你的服务器2、然后点上面菜单中的工...

详细>>

把某个服务器上的某些指定的表同步到另外一台

参数说明 数据库概述 / Database Overview   1 关于SQL /About SQL 构化查询语言(StructuredQueryLanguage)简称SQL,是一种特殊目的的...

详细>>

将上面的号改为=号就可以查询出没有重复的数据

我们经常在数据库中有重复的记录这时候我们希望删除那些重复的记录你不要告诉我你是一条条手动删除的哈:select...

详细>>

  3.默认文件组,该数据库包括一个主数据文件

数据库的操作: 场景:在学习文件组的恢复过程中,通过 sqlserver里对数据库文件的管理比较简单,主要的概念有:...

详细>>