Sql两种存储过程(单排序,多排序)


单条件单排序

ALTER PROCEDURE [dbo].[Universal_Infolist]
@tablename nvarchar(50),
@wherestr nvarchar(1000),
@oid nvarchar(20),
@oway nvarchar(50),
@pagesize int = 10,
@pageindex int=1,
@recordcount int =0 output
AS
declare @sqlstr nvarchar(1500)
if(@pageindex=1)
begin
set @sqlstr = ' select top '+Convert(nvarchar(20),@pagesize)+' * from '+@tablename+' where 1=1 '+@wherestr+' order by '+@oid+' '+@oway+' '
end
else
begin
set @sqlstr = ' select top '+Convert(nvarchar(20),@pagesize)+' * from '+@tablename+' where 1=1 '+@wherestr+' and '+@oid+' <(select min('+@oid+' ) from(select top '+convert(nvarchar(20), (@pageindex -1)*@pagesize)+ ' '+@oid+' from '+@tablename+' where 1=1 '+@wherestr+' order by '+@oid+' '+@oway+' ) as O ) order by '+@oid+' '+@oway+' '
end
Exec sp_executesql @sqlstr
--print @sqlstr;
set @sqlstr =' select count('+@oid+') from '+@tablename+' where 1=1 '+@wherestr+' '
exec sp_executesql @sqlstr

---------------------------------------------------

多条件多种排序

ALTER PROCEDURE [dbo].[Universal_Infolist_1]

@tablename nvarchar(50),
@wherestr nvarchar(1000),
@oid nvarchar(20),
@oway nvarchar(100),
@pagesize int = 10,
@pageindex int=1,
@recordcount int =0 output
AS
declare @sqlstr nvarchar(1500)
if(@pageindex=1)
begin
set @sqlstr = ' select top '+Convert(nvarchar(20),@pagesize)+' * from '+@tablename+' where 1=1 '+@wherestr+' order by '+@oway+' '
end
else
begin
set @sqlstr = ' select top '+Convert(nvarchar(20),@pagesize)+' * from '+@tablename+' where '+@oid+' not in (select top '+convert(nvarchar(20), (@pageindex -1)*@pagesize)+ ' '+@oid+' from '+@tablename+' where 1=1 '+@wherestr+' order by '+@oway+') '+@wherestr+' order by '+@oway+' '
end
Exec sp_executesql @sqlstr
--print @sqlstr;
set @sqlstr = ' select count('+@oid+') from '+@tablename+' where 1=1 '+@wherestr+' '
exec sp_executesql @sqlstr

优质内容筛选与推荐>>
1、2.1c#中的循环语句
2、查看ip地址
3、connectionTimeout和CommandTimeout
4、Java DB 访问(二) mybatis mapper xml 配置方式
5、在Anaconda3下,切换环境,把python脚本打包成exe文件


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号