DECLARE @SQLSTR VARCHAR(50),
        @SIGN VARCHAR(10),
        @ITEMCOUNT INT
--SET @SIGN = '@ITEMCOUNT'
SET @SQLSTR = 'SELECT @SIGN = COUNT(*) FROM TABLENAME where sPhoneNO='+@???
exec sp_executesql @sqlstr,N'@sign int output',@sign=@itemcount

解决方案 »

  1.   

    DECLARE @SQLSTR NVARCHAR(100),
            @ITEMCOUNT INT
    SET @SQLSTR = N'SELECT @X = COUNT(sPhoneNO) FROM TABLENAME'exec    sp_executesql    @SQLSTR,    N'@X    int  output', @ITEMCOUNT output
      

  2.   

    SET @SIGN = Rtrim(Ltrim(str(@ITEMCOUNT,10)))统计其他表中的行数,可以用子查询实现(select count(fld) from t1)
      

  3.   

    SET @SIGN = Rtrim(Ltrim(str(@ITEMCOUNT,10)))统计其他表中的行数,可以用子查询实现(select count(fld) from t1)
      

  4.   

    或:
    SET @SQLSTR = 'SELECT @SIGN = COUNT(*) FROM TABLENAME where sPhoneNO='''+@???+''''
      

  5.   

    >>还有就是在UPDATE语句要更新的列中不允许含有聚合函数,但是我有一列就
    >>是要统计其他表中的行数,请问怎么解决?update Ta
      set F1=(select count(*) from Tb where Tb.Fx=Ta.Fx)
      from Ta
      where ...
      

  6.   

    你这样写当然不行了
    可以看看
    http://www.csdn.net/expert/topic/783/783714.xml?temp=.675976