zoukankan      html  css  js  c++  java
  • 我的分组分页查询语句

    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    -- =============================================
    -- Author: <杨志翔>
    -- Create date: <2011-11-22 14:00>
    -- Description: <根据条件分组 根据>
    -- exec GetPageListByGroup 'ProductSeries','*',3,5,'ClassTree_ID','ParentClassID','7','ProductSeries_ID','desc','ProductSeriesName like ''%博%'''
    -- =============================================
    CREATE PROCEDURE GetPageListByGroup
    @tblName varchar(255), --表名
    @fldStr varchar(1000), --字段列表
    @pagesize int, --页的大小
    @pageIndex int, --页序号,第多少页
    @group varchar(255), --分组字段
    @parent varchar(255), --过滤字段
    @parentStr varchar(1000), --过滤条件
    @ordName varchar(255), --排序的字段名
    @ordBy char(4), --排序方式
    @where varchar(1000) --查询条件
    AS
    BEGIN

    declare @sql varchar(8000)
    set @sql=''
    set @sql=@sql+'select '+@fldStr+' from '+@tblName+' where '+@group+' in ('
    set @sql=@sql+'select top ('+Convert(varchar(50),@pagesize)+') '+@group+' from ('
    set @sql=@sql+'select top ('+Convert(varchar(50),@pagesize*@pageIndex)+') '+@group+' from '+@tblName+' where '+@parent+'='+@parentStr+' group by '+@group+' ) grp Order By '+@group+' DESC'
    set @sql=@sql+')'
    if len(@where)>0
    set @sql=@sql+' and '+@where
    set @sql=@sql+' order by '+@group+' ASC'
    if len(@ordName)>0
    set @sql=@sql+','+@ordName+' '+@ordBy

    execute(@sql);

    END
    GO

  • 相关阅读:
    lnmp mysql高负载优化
    vi查找替换命令详解
    学习资料汇总
    App应用推广
    sed 命令详解
    10个经典的Android开源应用项目
    Java基础学习总结——Java对象的序列化和反序列化
    Java制作证书的工具keytool用法总结
    Linux下安装Tomcat服务器和部署Web应用
    谈谈对Spring IOC的理解
  • 原文地址:https://www.cnblogs.com/21xz/p/2258915.html
Copyright © 2011-2022 走看看