zoukankan      html  css  js  c++  java
  • 【SQL 代码】Sql分页(自用)

    效果图:

    下面是存储过程的创建,用的时候调用就行了

    /****** Object:  StoredProcedure [dbo].[spSqlPageByRownumber]    Script Date: 2015/3/5 17:34:38 ******/
    SET ANSI_NULLS ON
    GO
    
    SET QUOTED_IDENTIFIER ON
    GO
    
    CREATE proc [dbo].[spSqlPageByRownumber]
    @tbName varchar(255),        --表名
    @tbFields varchar(1000),      --返回字段
    @PageSize int,                --页尺寸
    @PageIndex int,                --页码
    @strWhere varchar(1000),    --查询条件
    @StrOrder varchar(255)  --排序条件
    as
    declare @strSql varchar(5000)    --主语句
    declare @strSqlCount nvarchar(500)--
    --------------总记录数---------------
    if @strWhere !=''
    begin
    set @strSqlCount='Select count(*) as TotalCout from  ' + @tbName + ' where '+ @strWhere
    end
    else
    begin
    set @strSqlCount='Select count(*) as TotalCout from  ' + @tbName
    end
    --------------分页------------
    if @PageIndex <= 0
    begin
      set @PageIndex = 1
    end
    if @strWhere !=''
    begin
    set @strSql='Select * from (Select  row_number() over('+@strOrder+') rowId,'+ @tbFields
    +' from ' + @tbName + ' where  ' + @strWhere+' ) tb where tb.rowId >'+str((@PageIndex-1)*@PageSize)
    +' and tb.rowId <= ' +str(@PageIndex*@PageSize)
    end
    else
    begin
    set @strSql='Select * from (Select  row_number() over('+@strOrder+') rowId,'+ @tbFields
    +' from ' + @tbName + ' ) tb where tb.rowId >'+str((@PageIndex-1)*@PageSize)
    +' and tb.rowId <= ' +str(@PageIndex*@PageSize)
    end
    
    exec(@strSqlCount)
    exec(@strSql)
    GO

     执行:

    exec [dbo].spSqlPageByRownumber 'GoodsCategory','*',10,2,'Cid > 0','order by Cid desc'
  • 相关阅读:
    flex属性导图
    html代码换行造成空格间距问题
    iconfont作用在css伪类中的写法
    JS模态框 简单案例
    JS实时获取输入框中的值
    JS封装addClass、removeClass
    特效 左右滑动轮播图jQuery思路
    JS 字符串两边截取空白的trim()方法的封装
    JavaScript易混淆知识点小回顾--数组方法与字符串方法;
    用GitHub来展示前端页面
  • 原文地址:https://www.cnblogs.com/yc-755909659/p/4001712.html
Copyright © 2011-2022 走看看