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

  • 相关阅读:
    redis 初探
    RAID,mdadm(笔记)
    EXT2文件系统
    压缩、解压缩命令(笔记)
    shell编程while
    软连接、硬链接、磁盘分区管理(笔记)
    磁盘管理(笔记)
    恢复Linux下被误删除的文件(笔记)
    Linux下高效数据恢复软件extundelete应用实战
    RedHat安装GCC问题-解决依赖问题
  • 原文地址:https://www.cnblogs.com/21xz/p/2258915.html
Copyright © 2011-2022 走看看