8.26-搁浅

2021/8/26 23:09:29

本文主要是介绍8.26-搁浅,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

SQL储存过程的代码

create proc p_show
(
    @pageindex int,
    @pagesize int,
    @ename nvarchar(20),
    @totalcount int out,
    @totalpage int out
)
as
begin
    declare @sql nvarchar(max)='select a.*,b.DName,c.CName as Province,d.CName as City,e.CName as County from Employee a join Department b on a.DId=b.DId join City c on a.ProvinceId=c.CId join City d on 
    a.CityId=d.CId join City e on a.CountyId=e.CId'
    declare @sqlcount nvarchar(max)='select @totalcount=count(0) from Employee a join Department b on a.DId=b.DId join City c on a.ProvinceId=c.CId join City d on 
    a.CityId=d.CId join City e on a.CountyId=e.CId'
    if(@ename!='')
    begin
        set @sql+=' and a.EName like ''%'+@ename+'%'''
        set @sqlcount+=' and a.EName like ''%'+@ename+'%'''
    end
    set @sql=' order by a.EId offset (@pageindex-1)*pagesize rows fetch next @pagesize rows only'
    exec sp_executesql @sql,N'@pageindex int,@pagesize int',@pageindex,@pagesize
    exec sp_executesql @sqlcount,N'@totalcount int out',@totalcount out
    set @totalpage=CEILING(@totalcount/1.0/@pagesize)
end

 



这篇关于8.26-搁浅的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程