zoukankan      html  css  js  c++  java
  • 用sql语句查询从N条到M条的记录



    //说明:下面的代码是我转一位高手的,希望对大家能有所收或。。
    //再声明一下:如果表名与字段名在整个过程中不再变化,则可以用以下模式:
    //=================================
    @tableName as varchar(20)='leaveWord',--表名
    @fieldList as varchar(1000)='*',--字段列表
    @startIndex as varchar(10),--开始
    @endIndex as varchar(10)--结束

    ==================================//

    CREATE PROCEDURE p_GetBetweenData
    @tableName as varchar(20),--表名
    @fieldList as varchar(1000),--字段列表
    @startIndex as varchar(10),--开始
    @endIndex as varchar(10)--结束
    AS
    Declare @strSql as Varchar(4000) --定义sql字符串

    --将原表数据复制到临时表
    begin
     set @strSql='SELECT TOP '+@endIndex+' * INTO tempTB FROM '+@tableName
     --print @strSql
     exec(@strSql)
    end

    --修改临时表结构
    begin
      ALTER TABLE tempTB ADD _ID int IDENTITY
    end

    --查询出指定的记录,这里要注意一下,如果原表中有_id这个字段(无论大小与)下面的那个_ID字段名都要改一改
    begin
     set @strSql='SELECT '+ @fieldList + ' FROM tempTB WHERE _ID>='+@startIndex+' and _ID<='+@endIndex
     --print @strSql
     exec(@strSql )
    end

    --删除临时表
    begin
     drop table tempTB
    end

    GO

    //下面这种方法。。也可以。。只是在对临时表进行操作时有点不一样。。
     

    CREATE PROCEDURE p_GetBetweenData
    @tableName as varchar(20),--表名
    @fieldList as varchar(1000),--字段列表
    @startIndex as varchar(10),--开始
    @endIndex as varchar(10)--结束
    AS
    Declare @strSql as Varchar(4000) --定义sql字符串

    --将原表数据复制到临时表
    begin

     set @strSql='SELECT TOP '+@endIndex+' 0 AS _ID,* INTO tempTB FROM '+@tableName
     --print @strSql
     exec(@strSql)
    end

    --更新列编号,这里要注意一下,如果原表中有_id这个字段(无论大小与)下面的那个_ID字段名都要改一改

    begin
    Declare @i int
    set @i=0
    update tempTB set @i=@i+1,_ID=@i
    end

    --查询出指定的记录
    begin
     set @strSql='SELECT '+ @fieldList + ' FROM tempTB WHERE _ID>='+@startIndex+' and _ID<='+@endIndex
     --print @strSql
     exec(@strSql )
    end

    --删除临时表
    --begin
     --drop table tempTB
    --end

    GO

  • 相关阅读:
    求两个字符串中相同的汉字及字母的个数
    将十进制转成十六进制
    综合模糊查询
    求第一个字符串中第二个串的个数
    去除字符串中连续的分割符
    去除字符串中的html标记及标记中的内容
    sql基础语句
    SQL Server2008函数大全(完整版)
    sql 数字转人民币大写函数(两种方法)
    数字转IP地址函数
  • 原文地址:https://www.cnblogs.com/wantingqiang/p/1206646.html
Copyright © 2011-2022 走看看