G420607387 2015-01-08 01:32 采纳率: 25%
浏览 2858

关于单表SQL存储过程查询。分页条数,当前页码,总条数的问题

我实现PUB_AREA 表的数据查询, 上面是我写的调试, 指出在下面and处报错,无布尔类型,不知道到底哪里错了- -

declare @TotalNum int
exec PUB_AREA_SelectAREACITYByHsfSearchss '',10,1,@TotalNum output
select @TotalNum

alter PROCEDURE [dbo].[PUB_AREA_SelectAREACITYByHsfSearchss]                
@HsfSearch VARCHAR(2000), --刷选条件                
@PageSize INT,    --分页条数                
@CurPage INT,    --当前页码                
@TotalNum INT OUTPUT  --总条数                
AS                 

 DECLARE @BasicSQL VARCHAR(8000)                  
 DECLARE @BasicSQLTotal VARCHAR(8000)                
 SET @BasicSQLTotal='select AreaId,AreaName,ParentId from PUB_AREA'                    

 IF (@HsfSearch IS NOT NULL AND @HsfSearch <> '')                
 BEGIN                
  SET @BasicSQLTotal=@BasicSQLTotal+' WHERE '+@HsfSearch                
 END                 
 ELSE                 


 SET @BasicSQL=' SELECT AreaId,AreaName,ParentId                 
     FROM ('+@BasicSQLTotal+' ) A WHERE ' +                  
     CONVERT(VARCHAR,(@CurPage-1) * @PageSize + 1) + ' AND ' +                  
     CONVERT(VARCHAR,@CurPage * @PageSize) +' group by AreaId,AreaName,ParentId'                    

 EXEC  (@BasicSQL)                

 CREATE TABLE #Temp1                
 (                 
  num INT                
 )                

 INSERT INTO #Temp1                 
 EXEC ('SELECT count(*) FROM (' + @BasicSQL + ') A')  -- @BasicSQLTotal               

 SELECT @TotalNum=(                
      SELECT *                 
      FROM #Temp1                 
      )                    

 DROP TABLE #Temp1 

  • 写回答

2条回答 默认 最新

  • 开着拖拉机泡妞 2015-01-08 09:38
    关注

    SET @BasicSQL=' SELECT AreaId,AreaName,ParentId

    FROM ('+@BasicSQLTotal+' ) A WHERE ' +

    CONVERT(VARCHAR,(@CurPage-1) * @PageSize + 1) + ' AND ' +

    CONVERT(VARCHAR,@CurPage * @PageSize) +'='+ltrim(你的变量)+' group by AreaId,AreaName,ParentId'

        这种东西台的语句最后print出来看看就知道了
    
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog