if @PageIndex = 1 

 

begin 

   if @strWhere != ’’   

    set @strSQL = ’select top ’ + str(@PageSize) +’ ’+@strGetFields+ ’ from [’+ @tblName +’] where ’ + @strWhere + ’ ’ + @strOrder 

    else 

    set @strSQL = ’select top ’ + str(@PageSize) +’ ’+@strGetFields+ ’ from [’+ @tblName +’] ’+ @strOrder 

--如果是第一页就执行以上代码,这样会加快执行速度 

end 

else 

begin 

--以下代码赋予了@strSQL以真正执行的SQL代码 

set @strSQL = ’select top ’ + str(@PageSize) +’ ’+@strGetFields+ ’ from [’ + @tblName +’] where [’ + @fldName + ’]’ + @strTmp + ’([’+ @fldName + ’])  
from (select top ’ + str((@PageIndex-1)*@PageSize) + ’ [’+ @fldName + ’] from [’+ @tblName +’]’ + @strOrder + ’) as tblTmp)’+ @strOrder 

 

if @strWhere != ’’ 

   set @strSQL = ’select top ’ + str(@PageSize) +’ ’+@strGetFields+ ’ from [’+ @tblName +’] where [’ + @fldName + ’]’ + @strTmp + ’([’+ @fldName + ’]) from (select top ’ + str((@PageIndex-1)*@PageSize) + ’ [’+ @fldName + ’]  
from [’+ @tblName +’] where ’ + @strWhere + ’ ’ + @strOrder + ’) as tblTmp) and ’ + @strWhere + ’ ’ + @strOrder 

end 

end   

exec ( @strSQL)
GO

 
 

相关文章:

  • 2022-12-23
  • 2021-09-12
  • 2022-12-23
  • 2021-08-03
  • 2021-10-21
  • 2021-12-04
猜你喜欢
  • 2022-01-06
  • 2021-10-04
  • 2021-05-21
  • 2021-08-10
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案